alias.c (get_alias_set): Remove handling of PLACEHOLDER_EXPR.
[official-gcc.git] / gcc / ada / ChangeLog
blobee6e709807d38a23a6c15566403378a390330995
1 2004-03-21  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3         * decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
4         * trans.c (tree_transform, emit_index_check): Likewise.
5         * utils.c (build_template): Likewise.
6         (max_size, convert): Remove handling of WITH_RECORD_EXPR.
7         (maybe_unconstrained_array, unchecked_convert): Likewise.
8         * utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
9         (build_unary_op): Likewise.
10         (compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
11         (fill_vms_descriptor): Likewise.
12         (build_call_alloc_dealloc): Likewise.
13         ALIGN is unsigned.
14         * gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
16 2004-03-20  Joseph S. Myers  <jsm@polyomino.org.uk>
18         PR other/14630
19         * gnat_ug.texi: Add info directory category and entry.
20         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
21         gnat_ug_wnt.texi: Regenerate.
23 2004-03-19  Arnaud Charlet  <charlet@act-europe.fr>
25         * ada-tree.h: Update copyright notice.
26         Minor reformatting.
28 2004-03-19  Olivier Hainque  <hainque@act-europe.fr>
30         * decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
31         as regular exception objects and not as mere integers representing the
32         condition code.  The latter approach required some dynamics to mask off
33         severity bits, which did not fit well into the GCC table based model.
34         (gnat_to_gnu_entity, objects): Don't supply an external name for VMS
35         exception data objects. We don't it and it would conflict with the other
36         external symbol we have to generate for such exceptions.
38         * trans.c (tree_transform, case N_Exception_Handler): Remove part of
39         the special code for VMS exceptions, since these are now represented
40         as regular exceptions objects.
42 2004-03-19 Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
44         * decl.c (debug_no_type_hash): Remove.
45         (gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
46         * misc.c (LANG_HOOK_HASH_TYPE): Redefine.
48 2004-03-19  Laurent GUERBY <laurent@guerby.net>
50         * sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of 
51         aggregate, allows bootstrap from 3.3 on powerpc-darwin.
52         
53 2004-03-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
55         * ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
56         (TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
57         (TYPE_RM_SIZE_INT): Directly use type.values.
58         (TREE_LOOP_ID): Clean up check.
59         * decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
60         TYPE_VALUES, not TYPE_FIELDS.
61         * trans.c (convert_with_check): Delay access of bounds of basetype
62         until sure is numeric.
64 2004-03-18  Arnaud Charlet  <charlet@act-europe.fr>
66         * 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
68         Code clean up:
69         * 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
70         5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
71         Specific.Set instead of direct call to e.g pthread_setspecific.
73 2004-03-18  Thomas Quinot  <quinot@act-europe.fr>
75         * adaint.c: Update comments.
77         * Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
78         GNATLIB_SHARED for FreeBSD.
80 2004-03-18  Jose Ruiz  <ruiz@act-europe.fr>
82         * init.c [VxWorks]: Do not fix the stack size for the environment task.
83         When needed (stack checking) the stack size is retrieved
84         from the VxWorks kernel.
86         * Makefile.in: Flag -nostdinc is required when building the run time
87         for avoiding looking for files in the base compiler.
88         Add the VxWorks specific version of the package body for
89         System.Stack_checking.Operations (5zstchop.adb).
91         * Make-lang.in: Add the object file for
92         System.Stack_Checking.Operations.
94         * Makefile.rtl: Add object file for the package
95         System.Stack_Checking.Operations.
97         * s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
99         * s-stache.ads, s-stache.adb: Move the operations related to stack
100         checking from this package to package System.Stack_Checking.Operations.
101         This way, stack checking operations are only linked in the final
102         executable when using the -fstack-check flag.
104 2004-03-18  Doug Rupp  <rupp@gnat.com>
106         * Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
107         Reorganize ifeq's.
109         * 5qsystem.ads, 5xcrtl.ads: New files.
111 2004-03-18  Vincent Celier  <celier@gnat.com>
113         * prj.adb (Reset): Reset hash table Files_Htable
115         * prj-env.adb (Source_Paths, Object_Paths): New tables.
116         (Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
117         the procedures Add_To_Path_File.
118         (Set_Ada_Paths): Accumulate source and object dirs in the tables,
119         making sure that each directory is present only once and, for object
120         dirs, when a directory already present is added, the duplicate is
121         removed and the directory is always put as the last in the table.
122         Write the path files at the end of these accumulations.
124         * prj-nmsc.adb (Record_Source): Add source file name in hash table
125         Files_Htable for all sources.
127         * prj-proc.adb (Process): Remove restrictions between not directly
128         related extending projects.
130 2004-03-18  Emmanuel Briot  <briot@act-europe.fr>
132         * prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
133         (Find_Sources): Minor speed optimization.
135         * prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
136         parameter Trusted_Mode.
138 2004-03-18  Sergey Rybin  <rybin@act-europe.fr>
140         * scn.adb (Determine_License): Take into account a degenerated case
141         when the source contains only comments.
143 2004-03-18  Ed Schonberg  <schonberg@gnat.com>
145         * sem_warn.adb (Check_References): For a warning on a selected
146         component that does not come from source, locate an uninitialized
147         component of the record type to produce a more precise error message.
149 2004-03-15  Jerome Guitton  <guitton@act-europe.fr>
151         * 3zsoccon.ads: Fix multicast options.
153         * s-thread.ads: Move unchecked conversion from ATSD_Access to Address
154         in the spec.
156 2004-03-15  Robert Dewar  <dewar@gnat.com>
158         * sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
159         pragma used for a private type.
161         * lib-xref.adb (Generate_Reference): Do not generate warning if
162         reference is in a different unit from the pragma Unreferenced.
164         * 5vtpopde.adb: Minor reformatting
165         Fix casing of To_Task_ID
167         * sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
168         flag if we have an unchecked conversion to an access type in the same
169         unit.
171 2004-03-15  Geert Bosch  <bosch@gnat.com>
173         * a-ngcoty.adb (Modulus): In alternate formula for large real or
174         imaginary parts, use Double precision throughout.
176         * a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
177         we want to be able to compile run-time with -gnata for testing, but
178         this may also be instantiated in user code that is compiled with -gnata.
180 2004-03-15  Olivier Hainque  <hainque@act-europe.fr>
182         * s-stalib.ads (Exception_Code): New type, to represent Import/Export
183         codes. Having a separate type for this is useful to enforce consistency
184         throughout the various run-time units.
185         (Exception_Data): Use Exception_Code for Import_Code.
187         * s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
188         Natural and Integer in various places.
189         (Register_VMS_Exception): Use Base_Code_In to compute the exception code
190         with the severity bits masked off.
191         (Register_VMS_Exception): Handle the additional exception data pointer
192         argument.
194         * raise.c (_GNAT_Exception structure): Remove the handled_by_others
195         component, now reflected by an exported accessor.
196         (is_handled_by): New routine to compute whether the propagated
197         occurrence matches some handler choice specification. Extracted out of
198         get_action_description_for, and expanded to take care of the VMS
199         specifities.
200         (get_action_description_for): Use is_handled_by instead of an explicit
201         complex condition to decide if the current choice at hand catches the
202         propagated occurrence.
204         * raise.h (Exception_Code): New type for C.
206         * rtsfind.ads (RE_Id, RE_Unit_Table): Add
207         System.Standard_Library.Exception_Code, to allow references from the
208         pragma import/export expander.
210         * a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
211         New accessors to allow easy access to GNAT exception data
212         characteristics.
213         (GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
214         redundant Handled_By_Others component, helper for the personality
215         routine which will now be able to call the appropriate exception data
216         accessor instead.
218         * cstand.adb (Create_Standard): Adjust the type of the Import_Code
219         component of Standard_Exception_Type to be the closest possible to
220         Exception_Code in System.Standard_Library, that we cannot get at this
221         point. Expand a ??? comment to notify that this type node should
222         probably be rewritten later on.
224         * exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
225         registration call to include a pointer to the exception object in the
226         arguments.
228         * init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
229         instead of int and explicit bitmasks.
231 2004-03-15  Vincent Celier  <celier@gnat.com>
233         * vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
234         equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
236         * a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
237         longer needed now that it is in the spec of
238         System.Tasking.Task_Attributes.
240         * adaint.h, adaint.c: (__gnat_create_output_file): New function
242         * gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
244         * g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.
246         * make.adb (Gnatmake): Do not check the executable suffix; it is being
247         taken care of in Scan_Make_Arg.
248         (Scan_Make_Arg): Add the executable suffix only if the argument
249         following -o, in canonical case, does not end with the executable
250         suffix.  When in verbose mode and executable file name does not end
251         with executable suffix, output the executable name, in canonical case.
253         * s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
254         to avoid warnings when instantiating Ada.Task_Attributes.
255         Minor reformating.
257         * mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
258         in the correct order.
260         * prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
261         redirect standard output and error to a file for the invocation of the
262         compiler, then read the file.
264         * prj-nmsc.adb (Find_Sources): Use the Display_Value for each
265         directory, instead of the Value.
266         (Find_Source_Dirs): Remove useless code & comments.
268 2004-03-15  Ed Schonberg  <schonberg@gnat.com>
270         * exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
271         tagged type is inherited, and the parent operation is not frozen yet,
272         force generation of a freeze node for the inherited operation, so the
273         corresponding dispatch entry is properly initialized.
274         (Make_Predefined_Primitive_Specs): Check that return type is Boolean
275         when looking for user-defined equality operation.
277         * exp_ch4.adb (Expand_Composite_Equality): Check that return type is
278         boolean when locating primitive equality of tagged component.
280         * exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
281         bit-aligned field and the right-hand side a string literal, introduce
282         a temporary before expanding assignment into a loop.
284         * exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
285         priority in full, to ensure that any expanded subepxressions of it are
286         elaborated in the scope of the init_proc.
288         * exp_prag.adb (Expand_Pragma_Import): Search for initialization call
289         after object declaration, skipping over code that may have been
290         generated for validity checks.
292         * sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
293         discriminants, ignore the known discriminants of its full view, if
294         any, to check legality.
296         * sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
297         component if type has unknown discriminants.
298         (Analyze_Private_Extension_Declaration): Discriminant constraint is
299         null if type has unknown discriminants.
301         * sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
302         for end label when present.
304         * s-fileio.adb (Open): When called with a C_Stream, use given name for
305         temporary file, rather than an empty string.
307 2004-03-15  Ed Falis  <falis@gnat.com>
309         * s-thread.adb: Removed, no longer used.
311 2004-03-15  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
313         * decl.c (target.h): Now include.
314         (gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
315         in new build_pointer_from_mode calls for non-fat/non-thin pointer.
316         (validate_size): For POINTER_TYPE, get smallest size permitted on
317         machine.
319         * fe.h: Sort Einfo decls and add Set_Mechanism.
321         * Makefile.in: (LIBGNAT_SRCS): Remove types.h.
322         (ada/decl.o): Depends on target.h.
324         * trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
325         FUNCTION_BOUNDARY; always use TYPE_ALIGN.
327 2004-03-15  Thomas Quinot  <quinot@act-europe.fr>
329         * 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
331         * exp_ch4.adb (Expand_N_Indexed_Component): Do not call
332         Insert_Dereference_Action when rewriting an implicit dereference into
333         an explicit one, this will be taken care of during expansion of the
334         explicit dereference.
335         (Expand_N_Slice): Same. Always do the rewriting, even for the case
336         of non-packed slices, since the dereference action generated by
337         expansion of the explicit dereference is needed in any case.
338         (Expand_N_Selected_Component): When rewriting an implicit dereference,
339         analyze and resolve the rewritten explicit dereference so it is seen
340         by the expander.
341         (Insert_Dereference_Action): This procedure is now called only for the
342         expansion of an N_Explcit_Dereference_Node. Do insert a check even for
343         dereferences that do not come from source (including explicit
344         dereferences resulting from rewriting implicit ones), but do not
345         recursively insert a check for the dereference nodes contained within
346         the check.
347         (Insert_Dereference_Action): Clarify and correct comment.
349 2004-03-08  Paolo Bonzini  <bonzini@gnu.org>
351         PR ada/14131
352         Move language detection to the top level.
353         * config-lang.in: Build by default.
355 2004-03-05  Robert Dewar  <dewar@gnat.com>
357         * 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
359         * a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
360         i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
361         5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb, 
362         5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
363         unchecked conversion to spec to avoid warnings.
365         * s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
366         to Task_ID
368         * 7stpopsp.adb: Correct casing in To_Task_ID call
370         * a-strsea.ads, a-strsea.adb: Minor reformatting
372         * einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
374         * errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
375         Adjust Max_Msg_Length to be clearly large enough.
377         * fe.h: Define In_Same_Source_Unit
379         * osint.adb: Add pragma Warnings Off to suppress warnings
380         * g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
381         aliasing warnings.
383         * opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
385         * par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
387         * sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
389         * sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
391         * sem_prag.adb: Implement pragma No_Strict_Aliasing.
393         * sinfo.ads: Remove obsolete comment on validate unchecked conversion
394         node. We now do generate them for gcc back end.
396         * table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
397         warning.
399         * sinput-c.adb: Fix bad name in header.
400         Add pragma Warnings Off to suppress aliasing warning.
402         * sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning.
404         * snames.h, snames.ads, snames.adb: Add entry for pragma
405         No_Strict_Aliasing.
407 2004-03-05  Vincent Celier  <celier@gnat.com>
409         * prj-com.ads: Add hash table Files_Htable to check when a file name
410         is already a source of another project.
412         * prj-nmsc.adb (Record_Source): Before recording a new source, check
413         if its file name is not already a source of another project. Report an
414         error if it is.
416         * gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
417         source file name, call gnatpp with all the sources of the main project.
419         * vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
420         of file names.
422         * vms_data.ads: Correct documentation of new /OPTIMIZE keyword
423         NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
424         /RUNTIME_SYSTEM=, converted to --RTS=
425         /NOTABS, converted to -notabs
427 2004-03-05  Pascal Obry  <obry@gnat.com>
429         * make.adb: Minor reformatting.
431 2004-03-05  Ed Schonberg  <schonberg@gnat.com>
433         Part of implemention of AI-262.
434         * par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
436         * sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
437         procedure.
439         * sem_ch3.adb (Analyze_Component_Declaration): Improve error message
440         when component type is a partially constrained class-wide subtype.
441         (Constrain_Discriminated_Type): If parent type has unknown
442         discriminants, a constraint is illegal, even if full view has
443         discriminants.
444         (Build_Derived_Record_Type): Inherit discriminants when deriving a type
445         with unknown discriminants whose full view is a discriminated record.
447         * sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
448         flag, to handle properly derivations of tagged types with unknown
449         discriminants.
450         (Analyze_Package_Spec, Analyze_Package_Body): Install
451         Private_With_Clauses before analyzing private part or body.
453         * einfo.ads: Indicate that both Has_Unknown_Discriminants and
454         Has_Discriminants can be true for a given type (documentation).
456 2004-03-05  Arnaud Charlet  <charlet@act-europe.fr>
458         * s-restri.ads: Fix license (GPL->GMGPL).
460         * s-tassta.adb: Minor reformatting.
462         * s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
463         by calls to Exit_One_ATC_Level, since additional clean up is performed
464         by this function.
466         * s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
467         by calls to Exit_One_ATC_Level, since additional clean up is performed
468         by this function.
470 2004-03-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
472         * trans.c: Reflect GCC changes to fix bootstrap problem.
473         Add warning for suspicious aliasing unchecked conversion.
475 2004-03-05  GNAT Script  <nobody@gnat.com>
477         * Make-lang.in: Makefile automatically updated
479 2004-03-02  Emmanuel Briot  <briot@act-europe.fr>
481         * ali.adb (Read_Instantiation_Instance): Do not modify the
482         current_file_num when reading information about instantiations, since
483         this corrupts files in later references.
485 2004-03-02  Vincent Celier  <celier@gnat.com>
487         * bcheck.adb (Check_Consistency): Get the full path of an ALI file
488         before checking if it is read-only.
490         * bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front
491         of SRC_DIRS and eliminate duplicates.
493         * gprcmd.adb: Replace command "path" with command "path_sep" to return
494         the path separator.
495         (Usage): Document path_sep
497         * Makefile.generic: For Ada and GNU C++ cases, link directly with the
498         C++ compiler. No need for a script.
499         Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
500         Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
501         subst.
503         * prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
504         where there are Ada sources.
505         (Set_Ada_Paths): Only add to the include path the source dirs of project
506         with Ada sources.
507         (Add_To_Path): Add the Display_Values of the directories, not their
508         Values.
510         * prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
511         data.
513         * prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
514         is not No_Name.
515         (Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
516         Value is canonicalized.
517         (Language_Independent_Check): Do not copy Value to Display_Value when
518         canonicalizing Value.
520         * prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
521         path to find limited with cycles.
522         (Parse_Single_Project): Use canonical cased path to find the end of a
523         with cycle.
525 2004-03-02  Ed Schonberg  <schonberg@gnat.com>
527         * sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
528         and not a child unit.
530         * sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
531         appear in a with_clause.
533         * decl.c (gnat_to_gnu_type): If entity is a generic type, which can
534         only happen in type_annotate mode, do not try to elaborate it.
536         * exp_util.adb (Force_Evaluation): If expression is a selected
537         component on the left of an assignment, use a renaming rather than a
538         temporary to remove side effects.
540         * freeze.adb (Freeze_Entity): Do not freeze a global entity within an
541         inlined instance body, which is analyzed before the end of the
542         enclosing scope.
544 2004-03-02  Robert Dewar  <dewar@gnat.com>
546         * par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
547         sem_ch4.adb: Use new feature for substitution of keywords in VMS
549         * errout.ads, errout.adb: Implement new circuit for substitution of
550         keywords in VMS.
552         * sem_case.adb (Analyze_Choices): Place message properly when case is
553         a subtype reference rather than an explicit range.
555         * sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
557 2004-03-02  Doug Rupp  <rupp@gnat.com>
559         * init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
561 2004-03-02  Thomas Quinot  <quinot@act-europe.fr>
563         * s-tporft.adb: Add missing locking around call to Initialize_ATCB.
565 2004-03-02  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
567         * utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
568         BLKmode bitfield.
570 2004-02-25  Robert Dewar  <dewar@gnat.com>
572         * 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
573         55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
574         5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
575         5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
576         5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
577         5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
578         the defining instance of the type to avoid aliasing problems.
579         Fix copyright header.  Fix bad comments in package header.
581         * exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
583 2004-02-25  Ed Schonberg  <schonberg@gnat.com>
585         * exp_ch2.adb (Param_Entity): Handle properly formals that have been
586         rewritten as references when aliased through an address clause.
588         * sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
589         whether call can be interpreted as an indirect call to the result of a
590         parameterless function call returning an access subprogram.
592 2004-02-25  Arnaud Charlet  <charlet@act-europe.fr>
594         Code clean up:
595         * exp_ch7.adb (Make_Clean): Remove generation of calls to
596         Unlock[_Entries], since this is now done by Service_Entries directly.
598         * exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
600         * s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
601         Requeue_Call for better code readability. Change spec and update calls:
602         PO_Service_Entries now unlock the PO on exit.
603         (Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
604         PO_Service_Entries.
606         * s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit.
608         * s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries.
610 2004-02-25  Sergey Rybin  <rybin@act-europe.fr>
612         * exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
613         protected subprogram call and analyzing the result of such expanding
614         in case when the called protected subprogram is eliminated.
616         * sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
617         names.
619 2004-02-25  Jerome Guitton  <guitton@act-europe.fr>
621         * Makefile.in: Clean ups.
623 2004-02-23  Ed Schonberg  <schonberg@gnat.com>
625         * exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
626         protected operations if original subprogram is flagged as eliminated.
627         (Expand_N_Subprogram_Body): For a protected operation, create
628         discriminals for next operation before checking whether the operation
629         is eliminated.
631         * exp_ch9.adb (Expand_N_Protected_Body,
632         Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
633         for internal protected operations if the original subprogram is
634         eliminated.
636         * sem_elim.adb (Check_Eliminated): Handle properly protected operations
637         declared in a single protected object.
639 2004-02-23  Vincent Celier  <celier@gnat.com>
641         * prj-attr.adb: Make attribute Builder'Executable an associative array,
642         case insensitive if file names are case insensitive, instead of a
643         standard associative array.
645         * prj-attr.adb (Initialize): For 'b' associative arrays, do not set
646         them as case insensitive on platforms where the file names are case
647         sensitive.
649         * prj-part.adb (Parse_Single_Project): Make sure, when checking if
650         project file has already been parsed that canonical path are compared.
652 2004-02-23  Robert Dewar  <dewar@gnat.com>
654         * sinput-c.ads: Correct bad unit title in header
656         * freeze.adb: Minor reformatting
658 2004-02-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
660         * trans.c (tree_transform, case N_Procedure_Call_Statement): For
661         nonaddressable COMPONENT_REF that is removing padding that we are
662         taking the address of, take the address of the padded record instead
663         if item is variable size.
665 2004-02-20  Robert Dewar  <dewar@gnat.com>
667         * bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
669 2004-02-20  Ed Schonberg  <schonberg@gnat.com>
671         * freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
672         itype references for the constrained designated type of a component
673         whose base type is already frozen.
675 2004-02-20  Arnaud Charlet  <charlet@act-europe.fr>
677         * init.c (__gnat_error_handler [tru64]): Rewrite previous change to
678         avoid GCC warnings.
680 2004-02-20  Sergey Rybin  <rybin@act-europe.fr>
682         * sem_ch12.adb (Analyze_Formal_Package): Create a new defining
683         identifier for a phantom package that rewrites the formal package
684         declaration with a box. The Add semantic decorations for the defining
685         identifier from the original node (that represents the formal package).
687 2004-02-19  Matt Kraai  <kraai@alumni.cmu.edu>
689         * Make-lang.in (ada/stamp-sdefault): Use the top level
690         move-if-change.
692 2004-02-19  Richard Henderson  <rth@redhat.com>
694         * misc.c (record_code_position): Add third build arg for RTL_EXPR.
696 2004-02-18  Emmanuel Briot  <briot@act-europe.fr>
698         * ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
699         Scan_ALI can be used for multiple ALI files without reinitializing
700         between calls.
702 2004-02-18  Robert Dewar  <dewar@gnat.com>
704         * debug.adb: Minor reformatting.
706 2004-02-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
708         * decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
709         to zero if there is an address clause.
711 2004-02-18  Thomas Quinot  <quinot@act-europe.fr>
713         * exp_util.adb (Side_Effect_Free): Any literal is side effects free.
715 2004-02-18  Gary Dismukes  <dismukes@gnat.com>
717         * layout.adb (Layout_Component_List): Revise generation of call to
718         discriminant-checking function to pass selections of all of the type's
719         discriminants rather than just the variant-controlling discriminant.
721 2004-02-18  Olivier Hainque  <hainque@act-europe.fr>
723         * 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
724         fail in the current setup and triggers spurious system error messages.
725         Pretend it occurred and failed instead.
727 2004-02-18  Vincent Celier  <celier@gnat.com>
729         * bld.adb: Mark FLDFLAGS as saved
730         (Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
731         it is not the root project.  Put each directory to be
732         extended between double quotes to prevent it to be expanded on Windows.
733         (Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
734         the project file. Set them back to their initial values if they have not
735         been set in the project file.
737         * gprcmd.adb: (Gprdebug, Debug): New global variables
738         (Display_Command): New procedure
739         (Usage): Document new command "linkopts"
740         Call Display_Command when env var GPRDEBUG has the value "TRUE"
741         Implement new command "linkopts"
742         Remove quotes that may be around arguments for "extend"
743         Always call Normalize_Pathname with arguments formatted for the platform
745         * Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
746         Change @echo to @$(display) in target clean to be able to clean silently
748         * Makefile.prolog: Save FLDFLAGS and give it an initial empty value
750         * prj-part.adb (Project_Path_Name_Of): Do not put final result in
751         canonical case.
753         * prj-part.adb (Parse_Single_Project): Always call with From_Extended
754         = Extending_All when current project is an extending all project.
756         * vms_conv.adb (Output_File_Expected): New Boolean global variable,
757         set to True only for LINK command, after Unix switch -o.
758         (Process_Arguments): Set Output_File_Expected to True for LINK command
759         after Unix switch -o. When Output_File_Expected is True, never add an
760         extension to a file name.
762         * 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
763         option file name, only to the --for-linker= switch.
764         (Option_File_Name): If option file name do not end with ".opt", append
765         "/OPTIONS".
767 2004-02-18  GNAT Script  <nobody@gnat.com>
769         * Make-lang.in: Makefile automatically updated
771 2004-02-17  Matt Kraai  <kraai@alumni.cmu.edu>
773         * Make-lang.in (stamp-sdefault): Do not depend on
774         move-if-change.
776 2004-02-12  Zack Weinberg  <zack@codesourcery.com>
778         * config-lang.in: Disable Ada by default until probe logic for
779         a bootstrap Ada compiler can be moved to the top level configure
780         script.
782 2004-02-12  Olivier Hainque  <hainque@act-europe.fr>
784         * decl.c (components_to_record): Don't claim that the internal fields
785         we make to hold the variant parts are semantically addressable, because
786         they are not.
788         * exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and
789         adjust the comment describing the modular type form when we can use it.
790         (Install_PAT): Account for the Esiz renaming.
792         * init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
793         sc_onstack context indication before raising the exception to which
794         the signal is mapped. Allows better handling of later signals possibly
795         triggered by the resumed user code if the exception is handled.
797 2004-02-12  Arnaud Charlet  <charlet@act-europe.fr>
799         * 5zinit.adb: Removed, no longer used.
801 2004-02-12  Robert Dewar  <dewar@gnat.com>
803         * ali.adb: Remove separating space between parameters on R line. Makes
804         format consistent with format used by the binder for Set_Globals call.
806         * atree.ads, atree.adb: Minor reformatting (new function header format)
808         * bindgen.adb: Add Run-Time Globals documentation section containing
809         detailed documentation of the globals passed from the binder file to
810         the run time.
812         * gnatls.adb: Minor reformatting
814         * init.c (__gnat_set_globals): Add note pointing to documentation in
815         bindgen.
817         * lib-writ.ads, lib-writ.adb: Remove separating space between
818         parameters on R line.
819         Makes format consistent with format used by the binder for Set_Globals
820         call.
822         * osint.ads: Add 2004 to copyright notice
823         Minor reformatting
825         * snames.ads: Correct capitalization of FIFO_Within_Priorities
826         Noticed during code reading, documentation issue only
828         * usage.adb: Remove junk line for obsolete C switch
829         Noticed during code reading
831 2004-02-12  Vincent Celier  <celier@gnat.com>
833         * bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
834         extend for each directory, so that multiple /** directories are
835         extended individually.
836         (Recursive_Process): Set the default for LANGUAGES to ada
838         * gprcmd.adb: Define new command "ignore", to do nothing.
839         Implement new comment "path".
841         * Makefile.generic: Suppress output when SILENT is set
842         Make sure that when compiler for C/C++ is gcc, the correct -x switch is
843         used, so that the correct compiler is invoked.
844         When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/
845         CXX_INCLUDE_PATH, to avoid failure with too long command lines.
847 2004-02-12  Jerome Guitton  <guitton@act-europe.fr>
849         * Makefile.in: Clean ups and remove obsolete targets.
851 2004-02-12  Ed Schonberg  <schonberg@gnat.com>
853         * exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
854         predicate declared in exp_util.
856         * exp_util.adb: Add comments.
858         * sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
859         visibility before compiling context of the subunit.
861         * sem_res.adb (Check_Parameterless_Call): If the context expects a
862         value but the name is a procedure, do not attempt to analyze as a call,
863         in order to obtain more telling diagnostics.
865         * sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
866         'Access on parameterless function calls.
867         (Normalize_Actuals): For a parameterless function call with missing
868         actuals, defer diagnostic until resolution of enclosing call.
870         * sem_util.adb (Wrong_Type): If the context type is an access to
871         subprogram and the expression is a procedure name, suggest a missing
872         'attribute.
874 2004-02-10  Arnaud Charlet  <charlet@act-europe.fr>,
875             Nathanael Nerode  <neroden@gcc.gnu.org>
877         PR ada/6637, PR ada/5911
878         Merge with libada-branch:
879         * config-lang.in: Build libada only when ada is built.
881 2004-02-09  Ed Schonberg  <schonberg@gnat.com>
883         * exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality
884         for a tagged type, verify that both formals have the same type.
886         * exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
887         temporary when the formal is an in-parameter and the actual a possibly
888         unaligned slice.
890         * exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
891         when expansion is disabled, to ensure proper name capture with
892         overloaded literals.  Condition can be of any boolean type, resolve
893         accordingly.
895         * sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
896         renaming is for a formal subprogram with a default operator name, and
897         there is a usable operator that is visible at the point of
898         instantiation.
900 2004-02-09  Robert Dewar  <dewar@gnat.com>
902         * ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
903         rewrite to ignore errors in ali files, intended to allow tools downward
904         compatibility with new versions of ali files.
906         * ali.ads: Add new parameter Ignore_Errors
908         * bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
909         duplicating the error message giving the file with restrictions.
911         * debug.adb: Add debug flag I for gnatbind
913         * errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
914         operators for the case where the operator is a defining operator.
916         * exp_ch3.adb: Minor reformatting (new function spec format).
918         * exp_ch4.adb: Add comment for previous change, and make minor
919         adjustment to loop to always check for improper loop termination.
920         Minor reformatting throughout (new function spec format).
922         * gnatbind.adb: Implement -di debug flag for gnatbind
924         * gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
926         * gnatls.adb: Call Scan_ALI with Ignore_Errors set to True
928         * lib-load.adb: Fix bad assertion.
929         Found by testing and code reading.
930         Minor reformatting.
932         * lib-load.ads: Minor reformatting.
934         * lib-writ.adb: There is only one R line now.
936         * lib-writ.ads: Add documentation on making downward compatible changes
937         to ali files so old tools work with new ali files.
938         There is only one R line now.
939         Add documentation on format incompatibilities (with special GPS note)
941         * namet.ads, namet.adb: (Is_Operator_Name): New procedure
943         * par-load.adb: Minor reformatting
945         * sem_ch8.adb: Fix to error message from last update
946         Minor reformatting and restructuring of code from last update
948         * par-prag.adb, snames.adb, snames.ads, snames.h,
949         sem_prag.adb: Implement pragma Profile.
951         * stylesw.adb: Implement -gnatyN switch to turn off all style check
952         options.
954         * usage.adb: Add line for -gnatyN switch
956         * vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
958 2004-02-09  Albert Lee  <lee@gnat.com>
960         * errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
962 2004-02-09  Ed Schonberg  <schonberg@gnat.com>
964         * exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
965         slices.
967         * exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram
968         is nested in an instance that is not frozen yet, to avoid
969         order-of-elaboration problems in gigi.
971         * sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
972         body the attribute is legal.
974 2004-02-09  Robert Dewar  <dewar@gnat.com>
976         * s-rident.ads: Minor comment correction
978         * targparm.adb: Remove dependence on uintp completely. There was
979         always a bug in Make in that it called Targparm before initializing
980         the Uint package. The old code appeared to get away with this, but
981         the new code did not! This caused an assertion error in gnatmake.
983         * targparm.ads: Fix bad comment, restriction pragmas with parameters
984         are indeed fully supported.
986 2004-02-06  Alan Modra  <amodra@bigpond.net.au>
988         * misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
990 2004-02-05  Kazu Hirata  <kazu@cs.umass.edu>
992         * ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
993         with targetm.calls.promote_prototypes.
995 2004-02-04  Robert Dewar  <dewar@gnat.com>
997         * 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
998         ali.ads, gprcmd.adb: Minor reformatting
1000         * bindgen.adb: Output restrictions string for new style restrictions
1001         handling
1003         * impunit.adb: Add s-rident.ads (System.Rident) and
1004         s-restri (System.Restrictions)
1006         * lib-writ.adb: Fix bug in writing restrictions string (last few
1007         entries wrong)
1009         * s-restri.ads, s-restri.adb: Change name Restrictions to
1010         Run_Time_Restrictions to avoid conflict with package name.
1011         Add circuit to read and acquire run time restrictions.
1013 2004-02-04  Jose Ruiz  <ruiz@act-europe.fr>
1015         * restrict.ads, restrict.adb: Use the new restriction
1016         No_Task_Attributes_Package instead of the old No_Task_Attributes.
1018         * sem_prag.adb: No_Task_Attributes is a synonym of
1019         No_Task_Attributes_Package.
1021         * snames.ads, snames.adb: New entry for proper handling of
1022         No_Task_Attributes.
1024         * s-rident.ads: Adding restriction No_Task_Attributes_Package
1025         (AI-00249) that supersedes the GNAT specific restriction
1026         No_Task_Attributes.
1028 2004-02-04  Ed Schonberg  <schonberg@gnat.com>
1030         * sem_prag.adb: 
1031         (Analyze_Pragma, case Warnings): In an inlined body, as in an instance
1032          body, an identifier may be wrapped in an unchecked conversion.
1034 2004-02-04  Vincent Celier  <celier@gnat.com>
1036         * lib-writ.ads: Comment update for the W lines
1038         * bld.adb: (Expression): An empty string list is static
1040         * fname-uf.adb: Minor comment update
1042         * fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
1044         * gnatbind.adb: Initialize Cumulative_Restrictions with the
1045         restrictions on the target.
1047 2004-02-03  Kazu Hirata  <kazu@cs.umass.edu>
1049         * ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
1050         gen_rtx.
1052 2004-02-02  Arnaud Charlet  <charlet@gnat.com>
1054         * Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
1056 2004-02-02  Vincent Celier  <celier@gnat.com>
1058         * gprcmd.adb (Check_Args): If condition is false, print the invoked
1059         comment before the usage.
1060         Gprcmd: Fail when command is not recognized.
1061         (Usage): Document command "prefix"
1063         * g-md5.adb (Digest): Process last block.
1064         (Update): Do not process last block. Store remaining characters and
1065         length in Context.
1067         * g-md5.ads (Update): Document that several call to update are
1068         equivalent to one call with the concatenated string.
1069         (Context): Add fields to allow new Update behaviour.
1071         * fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
1072         defaulted to False.
1073         When May_Fail is True and no existing file can be found, return No_File.
1075         * 6vcstrea.adb: Inlined functions are now wrappers to implementation
1076         functions.
1078         * lib-writ.adb (Write_With_Lines): When body file does not exist, use
1079         spec file name instead on the W line.
1081 2004-02-02  Robert Dewar  <dewar@gnat.com>
1083         * ali.adb: Read and acquire info from new format restrictions lines
1085         * bcheck.adb: Add circuits for checking restrictions with parameters
1087         * bindgen.adb: Output dummy restrictions data
1088         To be changed later
1090         * ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
1091         exp_ch3.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_util.adb,
1092         freeze.adb, gnat1drv.adb, sem_attr.adb, sem_ch10.adb, sem_ch11.adb,
1093         sem_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb,
1094         sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
1096         * exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
1097         the warning message on access to possibly uninitialized variable S)
1098         Minor changes for new restrictions handling.
1100         * gnatbind.adb: Minor reformatting
1101         Minor changes for new restrictions handling
1102         Move circuit for -r processing here from bcheck (cleaner)
1104         * gnatcmd.adb, gnatlink.adb: Minor reformatting
1106         * lib-writ.adb: Output new format restrictions lines
1108         * lib-writ.ads: Document new R format lines for new restrictions
1109         handling.
1111         * s-restri.ads/adb: New files
1113         * Makefile.rtl: Add entry for s-restri.ads/adb
1115         * par-ch3.adb: Fix bad error messages starting with upper case letter
1116         Minor reformatting
1118         * restrict.adb: Major rewrite throughout for new restrictions handling
1119         Major point is to handle restrictions with parameters
1121         * restrict.ads: Major changes in interface to handle restrictions with
1122         parameters. Also generally simplifies setting of restrictions.
1124         * snames.ads/adb: New entry for proper handling of No_Requeue
1126         * sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
1127         restriction counting.
1128         Other minor changes for new restrictions handling
1130         * sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
1131         Restriction_Warnings now allows full parameter notation
1132         Major rewrite of Restrictions for new restrictions handling
1134 2004-02-02  Javier Miranda  <miranda@gnat.com>
1136         * par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
1137         syntax rule for object renaming declarations.
1138         (P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
1139         component definitions.
1141         * sem_ch3.adb (Analyze_Component_Declaration): Give support to access
1142         components.
1143         (Array_Type_Declaration): Give support to access components. In addition
1144         it was also modified to reflect the name of the object in anonymous
1145         array types. The old code did not take into account that it is possible
1146         to have an unconstrained anonymous array with an initial value.
1147         (Check_Or_Process_Discriminants): Allow access discriminant in
1148         non-limited types.
1149         (Process_Discriminants): Allow access discriminant in non-limited types
1150         Initialize the new Access_Definition field in N_Object_Renaming_Decl
1151         node.  Change Ada0Y to Ada 0Y in comments
1153         * sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
1154         equality operators.
1155         Change Ada0Y to Ada 0Y in comments
1157         * sem_ch8.adb (Analyze_Object_Renaming): Give support to access
1158         renamings Change Ada0Y to Ada 0Y in comments
1160         * sem_type.adb (Find_Unique_Type): Give support to the equality
1161         operators for universal access types
1162         Change Ada0Y to Ada 0Y in comments
1164         * sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
1166         * sinfo.ads (N_Component_Definition): Addition of Access_Definition
1167         field.
1168         (N_Object_Renaming_Declaration): Addition of Access_Definition field
1169         Change Ada0Y to Ada 0Y in comments
1171         * sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
1172         component definition and object renaming nodes
1173         Change Ada0Y to Ada 0Y in comments
1175 2004-02-02  Jose Ruiz  <ruiz@act-europe.fr>
1177         * restrict.adb: Use the new restriction identifier
1178         No_Requeue_Statements instead of the old No_Requeue for defining the
1179         restricted profile.
1181         * sem_ch9.adb (Analyze_Requeue): Check the new restriction
1182         No_Requeue_Statements.
1184         * s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
1185         that supersedes the GNAT specific restriction No_Requeue. The later is
1186         kept for backward compatibility.
1188 2004-02-02  Ed Schonberg  <schonberg@gnat.com>
1190         * lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
1191         5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
1192         pragma and fix incorrect ones.
1194         * sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
1195         warning if the pragma is redundant.
1197 2004-02-02  Thomas Quinot  <quinot@act-europe.fr>
1199         * 5staprop.adb: Add missing 'constant' keywords.
1201         * Makefile.in: use consistent value for SYMLIB on
1202         platforms where libaddr2line is supported.
1204 2004-02-02  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1206         * utils.c (end_subprog_body): Do not call rest_of_compilation if just
1207         annotating types.
1209 2004-02-02  Olivier Hainque  <hainque@act-europe.fr>
1211         * init.c (__gnat_install_handler): Setup an alternate stack for signal
1212         handlers in the environment thread. This allows proper propagation of
1213         an exception on stack overflows in this thread even when the builtin
1214         ABI stack-checking scheme is used without support for a stack reserve
1215         region.
1217         * utils.c (create_field_decl): Augment the head comment about bitfield
1218         creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
1219         here, because the former is not accurate enough at this point.
1220         Let finish_record_type decide instead.
1221         Don't make a bitfield if the field is to be addressable.
1222         Always set a size for the field if the record is packed, to ensure the
1223         checks for bitfield creation are triggered.
1224         (finish_record_type): During last pass over the fields, clear
1225         DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is
1226         not covered by the calls to layout_decl.  Adjust DECL_NONADDRESSABLE_P
1227         from DECL_BIT_FIELD.
1229 2004-01-30  Kelley Cook  <kcook@gcc.gnu.org>
1231         * Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir). 
1232         (doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
1233         (doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
1235 2004-01-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1237         * Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
1239         * 5fsystem.ads (Functions_Return_By_DSP): Set to False.
1240         (ZCX_By_Default): Likewise.
1241         (Front_End_ZCX_Support): Likewise.
1243         * 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
1244         (Initialize_Lock): Mark Level unreferenced.
1245         (Sleep): Mark Reason unreferenced.
1246         (Timed_Sleep): Likewise.
1247         (Wakeup): Likewise.
1248         (Exit_Task): Use Result.
1249         (Check_No_Locks): Mark Self_ID unreferenced.
1250         
1251         * 5gtasinf.adb (New_Sproc): Make Attr constant.
1252         (Bound_Thread_Attributes): Make Sproc constant.
1253         (New_Bound_Thread_Attributes): Likewise.
1255 2004-01-26  Ed Schonberg  <schonberg@gnat.com>
1257         * exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
1258         one-dimensional array an slice assignments, when component type is
1259         controlled.
1261         * exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
1262         component type is controlled, and control_actions are in effect, use
1263         TSS procedure rather than generating inline code.
1265         * exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
1266         arrays with controlled components.
1268 2004-01-26  Vincent Celier  <celier@gnat.com>
1270         * gnatcmd.adb (GNATCmd): Add specification of argument file on the
1271         command line for the non VMS case.
1273         * gnatlink.adb (Process_Binder_File): When building object file, if
1274         GNU linker is used, put all object paths between quotes, to prevent ld
1275         error when there are unusual characters (such as '!') in the paths.
1277         * Makefile.generic: When there are sources in Ada and the main is in
1278         C/C++, invoke gnatmake with -B, instead of -z.
1280         * vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
1281         from VMS_Conversion.
1282         (Process_Argument): New procedure, extracted from VMS_Conversion. Add
1283         specification of argument file on the command line.
1285 2004-01-26  Bernard Banner  <banner@gnat.com>
1287         * Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
1289 2004-01-26  Ed Schonberg  <schonberg@gnat.com>
1291         * snames.adb: Update copyright notice.
1292         Add info on slice assignment for controlled arrays.
1294 2004-01-23  Robert Dewar  <dewar@gnat.com>
1296         * exp_aggr.adb: Minor reformatting
1298         * exp_ch9.adb: Minor code clean up
1299         Minor reformatting
1300         Fix bad character in comment
1302         PR ada/13471
1303         * targparm.adb (Get_Target_Parameters): Give clean abort error on
1304         unexpected end of file, along with more detailed message.
1306 2004-01-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1308         * exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
1309         PAT.
1311         * decl.c (copy_alias_set): New function.
1312         (gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
1314 2004-01-23  Doug Rupp  <rupp@gnat.com>
1316         * Makefile.in (install-gnatlib): Change occurrences of lib$$file to
1317         lib$${file} in case subsequent character is not a separator.
1319 2004-01-23  Vincent Celier  <celier@gnat.com>
1321         * 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
1322         when the GCC version is at least 3.
1324         * make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
1325         Remove all "Opt.", to prepare for opt split
1327         * prj-part.adb (Parse_Single_Project): New Boolean out parameter
1328         Extends_All. Set to True when the project parsed is an extending all
1329         project. Fails for importing an extending all project only when the
1330         imported project is an extending all project.
1331         (Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
1332         depending on the value of Extends_All returned.
1334         * prj-proc.adb (Process): Check that no project shares its object
1335         directory with a project that extends it, directly or indirectly,
1336         including a virtual project.
1337         Check that no project extended by another project shares its object
1338         directory with another also extended project.
1340         * prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
1341         Kind = N_With_Clause
1343         * prj-tree.ads: Minor reformatting
1344         Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
1346 2004-01-23  Ed Schonberg  <schonberg@gnat.com>
1348         * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
1349         applies to a type with an incomplete view, use full view in Name of
1350         clause, for consistency with uses of Get_Attribute_Definition_Clause.
1352 2004-01-23  Arnaud Charlet  <charlet@act-europe.fr>
1354         * 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
1355         SCHED_RR, since other values are not supported by this policy.
1356         (Initialize): Move initialization of mutex attribute to package
1357         elaboration, to prevent early access to this variable.
1359         * Makefile.in: Remove mention of Makefile.adalib, unused.
1361         * Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
1362         1ssecsta.ads: Removed, unused.
1364 2004-01-21  Javier Miranda  <miranda@gnat.com>
1366         * exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
1367         entity if already built in the current scope.
1369         * exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
1370         reminder in internal scopes. Required for nested limited aggregates.
1372 2004-01-21  Doug Rupp  <rupp@gnat.com>
1374         * Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
1375         VMS. Replace all occurences of libgnat- and libgnarl- with
1376         libgnat$(hyphen) and libgnarl$(hyphen).
1377         Fixed shared library build problem on VMS.
1379 2004-01-21  Robert Dewar  <dewar@gnat.com>
1381         * mlib-prj.adb: Minor reformatting
1383 2004-01-21  Thomas Quinot  <quinot@act-europe.fr>
1385         * prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
1386         'constant' keywords for declaration of pointers that are not modified.
1388         * exp_pakd.adb: Fix English in comment.
1390 2004-01-21  Ed Schonberg  <schonberg@gnat.com>
1392         PR ada/10889
1393         * sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
1394         copy all attributes of the parent, including the foreign language
1395         convention.
1397 2004-01-21  Sergey Rybin  <rybin@act-europe.fr>
1399         PR ada/10565
1400         * sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
1401         for 'delay until' statement.
1403 2004-01-20  Kelley Cook  <kcook@gcc.gnu.org>
1405         * Make-lang.in: Replace $(docdir) with doc.
1406         (doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info
1407         doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
1408         to use consistent MAKEINFO rule.
1409         (ada.man, ada.srcman): Dummy entry.
1410         (ADA_INFOFILES): Define.
1411         (ada.info, ada.srcinfo): New rules.
1413 2004-01-19  Arnaud Charlet  <charlet@act-europe.fr>
1415         * utils.c: Update copyright notice, missed in previous change.
1417 2004-01-19  Vincent Celier  <celier@gnat.com>
1419         * mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the
1420         args if Bind is True. Set First_ALI, if not already done.
1421         (Build_Library): For Stand Alone Libraries, extract from one ALI file
1422         an eventual --RTS switch, for gnatbind, and all backend switches +
1423         --RTS, for linking.
1425 2004-01-19  Robert Dewar  <dewar@gnat.com>
1427         * sem_attr.adb, memtrack.adb: Minor reformatting
1429 2004-01-19  Ed Schonberg  <schonberg@gnat.com>
1431         * exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
1432         that rename enumeration literals. This is properly done in sem_eval.
1434         * sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
1435         to functions that rename enumeration literals.
1437         * sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
1438         functions that rename enumeration literals.
1440 2004-01-16  Kazu Hirata  <kazu@cs.umass.edu>
1442         * Make-lang.in (utils.o): Depend on target.h.
1443         * utils.c: Include target.h.
1444         (process_attributes): Use targetm.have_named_sections instead
1445         of ASM_OUTPUT_SECTION_NAME.
1447 2004-01-16  Andreas Jaeger  <aj@suse.de>
1449         * Makefile.in: Add $(DESTDIR).
1451 2004-01-15  Olivier Hainque  <hainque@act-europe.fr>
1453         * decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
1454         also when not defining if a Size clause applies. That information is
1455         not to be ignored.
1457 2004-01-15  Arnaud Charlet  <charlet@act-europe.fr>
1459         * Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
1460         symbolic links for the shared gnat run time when needed.
1462 2004-01-15  Vasiliy Fofanov  <fofanov@act-europe.fr>
1464         * memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
1465         for writing, and terminate with an error message if not.
1467 2004-01-15  Ed Schonberg  <schonberg@gnat.com>
1469         * sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
1470         warning on an access to subprogram in an instance, when the target
1471         type is declared in the same generic unit.
1472         (Eval_Attribute): If 'access is known to fail accessibility check,
1473         rewrite as a raise statement.
1475 2004-01-15  GNAT Script  <nobody@gnat.com>
1477         * Make-lang.in: Makefile automatically updated
1479 2004-01-15  Kelley Cook  <kcook@gcc.gnu.org>
1481         * Make-lang.in (ada.srcextra): Dummy entry.
1483 2004-01-14  Kelley Cook  <kcook@gcc.gnu.org>
1485         * Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
1487 2004-01-13  Ed Schonberg  <schonberg@gnat.com>
1489         * exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
1490         components that are initialized with aggregates.
1492 2004-01-13  Vincent Celier  <celier@gnat.com>
1494         * gnatlink.adb (Process_Binder_File): To find directory of shared
1495         libgcc, if "gcc-lib" is not a subdirectory, look for the last
1496         subdirectory "lib" in the path of the shared libgnat or libgnarl.
1498         * make.adb (Gnatmake): If GCC version is at least 3, link with
1499         -shared-libgcc, when there is at least one shared library project.
1501         * opt.ads (GCC_Version): New integer constant.
1503         * adaint.c (get_gcc_version): New function.
1505 2004-01-13  Robert Dewar  <dewar@gnat.com>
1507         * sem_dist.adb, sem_res.adb, sem_util.adb,
1508         sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
1509         exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
1511 2004-01-13  Thomas Quinot  <quinot@act-europe.fr>
1513         * s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
1514         g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
1515         declarations.
1517 2004-01-12  Arnaud Charlet  <charlet@act-europe.fr>
1519         * misc.c: Remove trailing spaces.
1520         Update copyright notice missed in previous change.
1522         PR ada/13572
1523         * bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
1524         prefix/share/make
1526         * Makefile.generic: Update copyright.
1527         Add license notice.
1529         * Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
1530         of prefix/share/make.
1532         * Makefile.prolog: Update copyright.
1533         Add license notice.
1535 2004-01-12  Laurent Pautet  <pautet@act-europe.fr>
1537         * 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
1538         3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
1539         g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
1540         instead of String.
1542         * g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
1543         signature.
1545 2004-01-12  Javier Miranda  <miranda@gnat.com>
1547         * cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb,
1548         exp_imgv.adb, exp_pakd.adb, exp_util.adb, par-ch3.adb, sem.adb,
1549         sem_ch12.adb, sem_ch3.adb, sem_dist.adb, sem_prag.adb, sem_res.adb,
1550         sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of
1551         Component_Definition node.
1553 2004-01-12  Ed Falis  <falis@gnat.com>
1555         * impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
1557 2004-01-12  Thomas Quinot  <quinot@act-europe.fr>
1559         * link.c: Change default libgnat kind to STATIC for FreeBSD.
1561 2004-01-12  Bernard Banner  <banner@gnat.com>
1563         * Makefile.in: map 86numaux to a-numaux for x86_64
1565 2004-01-12  Ed Schonberg  <schonberg@gnat.com>
1567         * lib-xref.adb (Get_Type_Reference): If the type is the subtype entity
1568         generated to rename a generic actual, go to the actual itself, the
1569         subtype is not a user-visible entity.
1571         * sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
1572         part is a private subtype, reset the visibility of its full view, if
1573         any, to be consistent.
1575         PR ada/13417
1576         * sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
1577         to use a generic package G as a formal package for another generic
1578         declared within G.
1580 2004-01-12  Robert Dewar  <dewar@gnat.com>
1582         * trans.c (Eliminate_Error_Msg): New procedure called to generate msg
1584         * usage.adb: Remove mention of obsolete -gnatwb switch
1585         Noticed during code reading
1587 2004-01-12  Jerome Guitton  <guitton@act-europe.fr>
1589         * 1ssecsta.adb: Minor changes for -gnatwa warnings
1591 2004-01-12  GNAT Script  <nobody@gnat.com>
1593         * Make-lang.in: Makefile automatically updated
1595 2004-01-09  Mark Mitchell  <mark@codesourcery.com>
1597         * misc.c (gnat_expand_expr): Add alt_rtl parameter.
1599 2004-01-07  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1601         * link.c [sgi] (shared_libgnat_default): Change to STATIC.
1603 2004-01-05  Kelley Cook  <kcook@gcc.gnu.org>
1605         * Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
1606         Update comment and copyright date.
1607         * stamp-xgnatug: Delete.
1609 2004-01-05  Robert Dewar  <dewar@gnat.com>
1611         * 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may
1612         be modified by the binder generated main program if the -D switch is
1613         used.
1615         * 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
1616         imported functions (since now we expect this to be done for imported
1617         functions)
1619         * 5vtaprop.adb: Add several ??? for sections requiring more comments
1620         Minor reformatting throughout
1622         * 5zinit.adb: Minor reformatting
1623         Add 2004 to copyright date
1624         Minor changes to avoid -gnatwa warnings
1625         Correct some instances of using OR instead of OR ELSE (noted while
1626         doing reformatting)
1628         * sprint.adb: Minor updates to avoid -gnatwa warnings
1630         * s-secsta.ads, s-secsta.adb:
1631         (SS_Get_Max): New function to obtain high water mark for ss stack
1632         Default_Secondary_Stack is not a constant since it may be modified by
1633         the binder generated main program if the -D switch is used.
1635         * switch-b.adb: New -Dnnn switch for binder
1637         * switch-c.adb:
1638         Make -gnatg imply all warnings currently in -gnatwa
1640         * vms_conv.adb: Minor reformatting
1641         Add 2004 to copyright notice
1642         Add 2004 to printed copyright notice
1644         * 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
1645         3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
1646         5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
1647         5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
1648         5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
1649         5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
1650         5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
1651         5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
1652         5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
1653         5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
1654         6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
1655         vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
1656         xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
1657         sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
1658         checks.adb, clean.adb, cstand.adb, einfo.ads,
1659         einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
1660         exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.adb,
1661         prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb,
1662         sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
1663         g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
1664         lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
1665         Minor reformatting and code clean ups.
1666         Minor changes to prevent -gnatwa warnings
1668         * ali.adb: Minor reformatting and cleanup of code
1669         Acquire new SS indication of secondary stack use from ali files
1671         * a-numaux.ads: Add Pure_Function pragmas for all imported functions
1672         (since now we expect this to be done for imported functions)
1674         * bindgen.adb: Generate call to modify default secondary stack size if
1675         -Dnnn switch given
1677         * bindusg.adb: Add line for new -D switch
1679         * exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
1680         replacement name for Type_May_Have_Non_Bit_Aligned_Components!
1681         Add circuitry for both records and arrays to avoid gigi
1682         processing if the type involved has non-bit-aligned components
1684         * exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
1685         N_String_Literal node always references an E_String_Literal_Subtype
1686         entity. This may not be true in the future.
1687         (Possible_Bit_Aligned_Component): Move processing of
1688         Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
1690         * exp_ch6.adb (Expand_Thread_Body): Pick up
1691         Default_Secondary_Stack_Size as variable so that we get value modified
1692         by possible -Dnnn binder parameter.
1694         * exp_util.adb (Component_May_Be_Bit_Aligned): New function.
1695         (Type_May_Have_Bit_Aligned_Components): New function.
1697         * exp_util.ads (Component_May_Be_Bit_Aligned): New function.
1698         (Type_May_Have_Bit_Aligned_Components): New function.
1700         * fe.h: (Set_Identifier_Casing): Fix prototype.
1701         Add declaration for Sem_Elim.Eliminate_Error_Msg.
1702         Minor reformatting.
1704         * freeze.adb (Freeze_Entity): Add RM reference to error message about
1705         importing constant atomic/volatile objects.
1706         (Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
1707         unless explicit Pure_Function pragma given, to avoid insidious bug of
1708         call to non-pure imported function getting eliminated.
1710         * gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
1711         gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
1712         gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
1713         Add 2004 to printed copyright notice
1715         * lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
1716         stack used.
1718         * Makefile.rtl: Add entry for g-sestin.o
1719         g-sestin.ads: New file.
1721         * mdll.adb: Minor changes to avoid -gnatwa warnings
1723         * mlib-tgt.adb: Minor reformatting
1725         * opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
1726         New switch Sec_Stack_Used (GNAT, GNATBIND)
1727         Make Default_Secondary_Stack_Size a variable instead of a constant,
1728         so that it can be modified by the new -Dnnn bind switch.
1730         * rtsfind.adb (Load_Fail): Give full error message in configurable
1731         run-time mode if all_errors mode is set. This was not done in the case
1732         of a file not found, which was an oversight.
1733         Note if secondary stack unit is used by compiler.
1735         * sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
1736         ineffective elaborate all pragmas on non-visible packages (this
1737         happened when a renamed subprogram was called). Now the elaborate all
1738         always goes on the package containing the renaming rather than the one
1739         containing the renamed subprogram.
1741         * sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
1742         (Process_Eliminate_Pragma): Add parameter to capture pragma location.
1744         * sem_eval.adb (Eval_String_Literal): Do not assume that string literal
1745         has an Etype that references an E_String_Literal.
1746         (Eval_String_Literal): Avoid assumption that N_String_Literal node
1747         always references an E_String_Literal_Subtype entity. This may not
1748         be true in the future.
1750         * sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
1751         pragma location.
1753         * sem_res.adb (Resolve): Specialize msg for function name used in proc
1754         call.
1756 2004-01-05  Ed Falis  <falis@gnat.com>
1758         * g-debuti.adb: Replaced direct boolean operator with short-circuit
1759         form.
1761 2004-01-05  Vincent Celier  <celier@gnat.com>
1763         * bld.adb: Minor comment updates
1764         (Process_Declarative_Items): Correct incorrect name (Index_Name instead
1765         of Item_Name).
1767         * make.adb (Gnatmake): Special process for files to compile/check when
1768         -B is specified. Fail when there are only foreign mains in attribute
1769         Main of the project file and -B is not specified. Do not skip bind/link
1770         steps when -B is specified.
1772         * makeusg.adb: Document new switch -B
1774         * opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
1776         * switch-m.adb: (Scan_Make_Switches): Process -B switch
1778         * vms_data.ads: Add new GNAT PRETTY qualifier
1779         /FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
1781 2004-01-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
1783         * trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
1784         case.
1786         * misc.c (gnat_printable_name): If VERBOSITY is 2, call
1787         Set_Identifier_Casing.
1789         * decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
1790         has size that overflows.
1792 2004-01-05  Gary Dismukes  <dismukes@gnat.com>
1794         * exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
1795         -gnatwa warning on static condition.
1797 2004-01-05  Doug Rupp  <rupp@gnat.com>
1799         * link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
1801 2004-01-05  Arnaud Charlet  <charlet@act-europe.fr>
1803         * Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
1804         all attributes, including read-only attribute.
1806 2004-01-05  Pascal Obry  <obry@gnat.com>
1808         * bindgen.adb (Gen_Object_Files_Options): Generate the new shared
1809         library naming scheme.
1811         * mlib-prj.adb (Build_Library): Generate different names for the static
1812         or dynamic version of the GNAT runtime. This is needed to support the
1813         new shared library naming scheme.
1814         (Process_Binder_File): Add detection of shared library in binder file
1815         based on the new naming scheme.
1817         * gnatlink.adb (Process_Binder_File): Properly detect the new naming
1818         scheme for the shared runtime libraries.
1820         * Makefile.in:
1821         (LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
1822         scheme.
1823         (install-gnatlib): Do not create symlinks for shared libraries.
1824         (gnatlib-shared-default): Idem.
1825         (gnatlib-shared-dual-win32): New target. Not used for now as the
1826         auto-import feature does not support arrays/records.
1827         (gnatlib-shared-win32): Do not create copy for the shared libraries.
1828         (gnatlib-shared-vms): Fix shared runtime libraries names.
1830         * osint.ads, osint.adb (Shared_Lib): New routine, returns the target
1831         dependent runtime shared library name.
1833 2004-01-05  Vasiliy Fofanov  <fofanov@act-europe.fr>
1835         * osint.adb (Read_Library_Info): Remove bogus check if ALI is older
1836         than the object.
1838 2004-01-05  Ed Schonberg  <schonberg@gnat.com>
1840         * sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
1841         protected objects when allocator has a subtype indication, not a
1842         qualified expression. Note that qualified expressions may have to be
1843         checked when limited aggregates are implemented.
1845         * sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
1846         pure, emit warning.
1847         (Analyze_Pragma, case Pure_Function): If enclosing package is pure and
1848         subprogram is imported, remove warning.
1850 2004-01-05  Geert Bosch  <bosch@gnat.com>
1852         * s-poosiz.adb: Update copyright notice.
1853         (Allocate): Use Task_Lock to protect against concurrent access.
1854         (Deallocate): Likewise.
1856 2004-01-05  Joel Brobecker  <brobecker@gnat.com>
1858         * s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
1859         comment.
1861 2003-12-23  Kelley Cook  <kcook@gcc.gnu.org>
1863         * gnat_ug.texi: Force a CVS commit by updating copyright.
1864         * gnat_ug_vxw.texi: Regenerate.
1865         * gnat_ug_wnt.texi: Regenerate.
1866         * gnat_ug_vms.texi: Regenerate.
1867         * gnat_ug_unx.texi: Regenerate.
1869 2003-12-20  Kazu Hirata  <kazu@cs.umass.edu>
1871         * trans.c: Remove uses of "register" specifier in
1872         declarations of local variables.
1874 2003-12-18  Kelley Cook  <kcook@gcc.gnu.org>
1876         * stamp-xgnatug: New stamp file.
1877         * Make-lang.in (stamp-xgnatug):  New stamp file and comment.
1878         (ada/doctools/xgnatug): Add $(build_exeext).
1879         (ada/gnat_ug_unx.texi, ada/gnat_ug_vwx.texi, ada/gnat_ug_vms.texi
1880         ada/gnat_ug_wnt.texi): Update to depend on stamp-xgnatug.
1882 2003-12-17  Ed Falis  <falis@gnat.com>
1884         * a-elchha.adb (Tailored_Exception_Information): made Info constant to
1885         eliminate warning.
1887         * a-exextr.adb: Add context clause for
1888         Ada.Exceptions.Last_Chance_Handler.
1890 2003-12-17  Sergey Rybin  <rybin@act-europe.fr>
1892         * cstand.adb (Create_Standard): Change the way how the declaration of
1893         the Duration type is created (making it the same way as it is for all
1894         the other standard types).
1896 2003-12-17  Robert Dewar  <dewar@gnat.com>
1898         * s-crtl.ads: Fix header format
1899         Change Pure to Preelaborate
1901 2003-12-17  Ed Schonberg  <schonberg@gnat.com>
1903         * checks.adb (Selected_Length_Checks): Generate an Itype reference for
1904         the expression type only if it is declared in the current unit.
1906         * sem_ch3.adb (Constrain_Index): Handle properly a range whose bounds
1907         are universal and already analyzed, as can occur in constrained
1908         subcomponents that depend on discriminants, when one constraint is a
1909         subtype mark.
1911         * sem_res.adb (Resolve_Type_Conversion): Any arithmetic expression of
1912         type Any_Fixed is legal as the argument of a conversion, if only one
1913         fixed-point type is in context.
1915 2003-12-17  GNAT Script  <nobody@gnat.com>
1917         * Make-lang.in: Makefile automatically updated
1919 2003-12-15  Robert Dewar  <dewar@gnat.com>
1921         * exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
1922         sec stack size.
1924 2003-12-15  Vincent Celier  <celier@gnat.com>
1926         * gnatchop.adb: (Error_Msg): Do not exit on error for a warning
1927         (Gnatchop): Do not set failure status when reporting the number of
1928         warnings.
1930 2003-12-15  Doug Rupp  <rupp@gnat.com>
1932         * s-ctrl.ads: New file.
1934         * Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).
1936         * Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
1937         (GNATBIND_OBJS): Add ada/s-crtl.o.
1939         * Makefile.in [VMS]: Clean up ifeq rules.
1941         * gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
1942         a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
1943         g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
1944         s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
1945         s-tasdeb.adb: Update copyright.
1946         Import System.CRTL.
1947         Make minor modifications to use System.CRTL declared functions instead
1948         of importing locally.
1950 2003-12-15  GNAT Script  <nobody@gnat.com>
1952         * Make-lang.in: Makefile automatically updated
1954 2003-12-11  Ed Falis  <falis@gnat.com>
1956         * 5zinit.adb: Clean up.
1958         * 5zintman.adb (Notify_Exception): replaced case statement with a call
1959         to __gnat_map_signal, imported from init.c to support
1960         signal -> exception mappings that depend on the vxWorks version.
1962         * init.c:
1963         Created and exported __gnat_map_signal to support signal -> exception
1964         mapping that is dependent on the VxWorks version.
1965         Change mapping of SIGBUS from Program_Error to Storage_Error on VxWorks
1967 2003-12-11  Vasiliy Fofanv  <fofanov@act-europe.fr>
1969         * 5wosinte.ads: Link with -mthreads switch.
1971 2003-12-11  Arnaud Charlet  <charlet@act-europe.fr>
1973         * init.c (__gnat_install_handler [NetBSD]): Set
1974         __gnat_handler_installed, as done on all other platforms.
1975         Remove duplicated code.
1977 2003-12-11  Jerome Guitton  <guitton@act-europe.fr>
1979         * Makefile.in (rts-zfp, rts-ravenscar): Create libgnat.a.
1981 2003-12-11  Thomas Quinot  <quinot@act-europe.fr>
1983         * sinfo.ads: Fix inconsistent example code in comment.
1985 2003-12-11  Robert Dewar  <dewar@gnat.com>
1987         * a-tiinau.adb: Add a couple of comments
1989         * sem_ch3.adb: Minor reformatting
1991         * sem_prag.adb:
1992         Fix bad prototype of Same_Base_Type in body (code reading cleanup)
1993         Minor reformatting throughout
1995 2003-12-11  Ed Schonberg  <schonberg@gnat.com>
1997         * exp_ch7.adb (Establish_Transient_Scope): If the call is within the
1998         bounds of a loop, create a separate block in order to generate proper
1999         cleanup actions to prevent memory leaks.
2001         * sem_res.adb (Resolve_Call): After a call to
2002         Establish_Transient_Scope, the call may be rewritten and relocated, in
2003         which case no further processing is needed.
2005         * sem_util.adb: (Wrong_Type): Refine previous fix.
2006          Fixes ACATS regressions.
2008         PR ada/13353
2010         * sem_prag.adb (Back_End_Cannot_Inline): A renaming_as_body can always
2011         be inlined.
2013 2003-12-08  Jerome Guitton  <guitton@act-europe.fr>
2015         * 5ytiitho.adb, 5zthrini.adb, 5ztiitho.adb, i-vthrea.adb,
2016         i-vthrea.ads, s-tpae65.adb, s-tpae65.ads: Cleanup: Remove a bunch of
2017         obsolete files.
2019         * Makefile.in: (rts-ravenscar): Generate an empty libgnat.a.
2020         (rts-zfp): Ditto.
2022 2003-12-08  Robert Dewar  <dewar@gnat.com>
2024         * 7sintman.adb: Minor reformatting
2026         * bindgen.adb: Configurable_Run_Time mode no longer suppresses the
2027         standard linker options to get standard libraries linked. We now plan
2028         to provide dummy versions of these libraries to match the appropriate
2029         configurable run-time (e.g. if a library is not needed at all, provide
2030         a dummy empty library).
2032         * targparm.ads: Configurable_Run_Time mode no longer affects linker
2033         options (-L parameters and standard libraries). What we plan to do is
2034         to provide dummy libraries where the libraries are not required.
2036         * gnatbind.adb: Minor comment improvement
2038 2003-12-08  Javier Miranda  <miranda@gnat.com>
2040         * exp_aggr.adb (Build_Record_Aggr_Code): Do not remove the expanded
2041         aggregate in the parent. Otherwise constants with limited aggregates
2042         are not supported. Add new formal to pass the component type (Ctype).
2043         It is required to call the corresponding IP subprogram in case of
2044         default initialized components.
2045         (Gen_Assign): In case of default-initialized component, generate a
2046         call to the IP subprogram associated with the component.
2047         (Build_Record_Aggr_Code): Remove the aggregate from the parent in case
2048         of aggregate with default initialized components.
2049         (Has_Default_Init_Comps): Improve implementation to recursively check
2050         all the present expressions.
2052         * exp_ch3.ads, exp_ch3.adb (Build_Initialization_Call): Add new formal
2053         to indicate that the initialization call corresponds to a
2054         default-initialized component of an aggregate.
2055         In case of default initialized aggregate with tasks this parameter is
2056         used to generate a null string (this is just a workaround that must be
2057         improved later). In case of discriminants, this parameter is used to
2058         generate a selected component node that gives access to the discriminant
2059         value.
2061         * exp_ch9.ads, exp_ch9.adb (Build_Task_Allocate_Block_With_Stmts): New
2062         subprogram, based on Build_Task_Allocate_Block, but adapted to expand
2063         allocated aggregates with default-initialized components.
2065         * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve error message if
2066         the box notation is used in positional aggregates.
2068 2003-12-08  Samuel Tardieu  <tardieu@act-europe.fr>
2070         * lib.ads: Fix typo in comment
2072 2003-12-08  Vincent Celier  <celier@gnat.com>
2074         * prj.adb (Project_Empty): New component Unkept_Comments
2075         (Scan): Remove procedure; moved to Prj.Err.
2077         * prj.ads (Project_Data): New Boolean component Unkept_Comments
2078         (Scan): Remove procedure; moved to Prj.Err.
2080         * prj-dect.adb: Manage comments for the different declarations.
2082         * prj-part.adb (With_Record): New component Node
2083         (Parse): New Boolean parameter Store_Comments, defaulted to False.
2084         Set the scanner to return ends of line and comments as tokens, if
2085         Store_Comments is True.
2086         (Pre_Parse_Context_Clause): Create the N_With_Clause nodes so that
2087         comments are associated with these nodes. Store the node IDs in the
2088         With_Records.
2089         (Post_Parse_Context_Clause): Use the N_With_Clause nodes stored in the
2090         With_Records.
2091         (Parse_Single_Project): Call Pre_Parse_Context_Clause before creating
2092         the N_Project node. Call Tree.Save and Tree.Reset before scanning the
2093         current project. Call Tree.Restore afterwards. Set the various nodes
2094         for comment storage (Next_End, End_Of_Line, Previous_Line,
2095         Previous_End).
2097         * prj-part.ads (Parse): New Boolean parameter Store_Comments,
2098         defaulted to False.
2100         * prj-pp.adb (Write_String): New Boolean parameter Truncated, defaulted
2101         to False. When Truncated is True, truncate the string, never go to the
2102         next line.
2103         (Write_End_Of_Line_Comment): New procedure
2104         (Print): Process comments for nodes N_With_Clause,
2105         N_Package_Declaration, N_String_Type_Declaration,
2106         N_Attribute_Declaration, N_Typed_Variable_Declaration,
2107         N_Variable_Declaration, N_Case_Construction, N_Case_Item.
2108         Process nodes N_Comment.
2110         * prj-tree.ads, prj-tree.adb (Default_Project_Node): If it is a node
2111         without comments and there are some comments, set the flag
2112         Unkept_Comments to True.
2113         (Scan): If there are comments, set the flag Unkept_Comments to True and
2114         clear the comments.
2115         (Project_Node_Kind): Add enum values N_Comment_Zones, N_Comment
2116         (Next_End_Nodes: New table
2117         (Comment_Zones_Of): New function
2118         (Scan): New procedure; moved from Prj. Accumulate comments in the
2119         Comments table and set end of line comments, comments after, after end
2120         and before end.
2121         (Add_Comments): New procedure
2122         (Save, Restore, Seset_State): New procedures
2123         (There_Are_Unkept_Comments): New function
2124         (Set_Previous_Line_Node, Set_Previous_End_Node): New procedures
2125         (Set_End_Of_Line, Set_Next_End_Node, Remove_Next_End_Node): New
2126         procedures.
2127         (First_Comment_After, First_Comment_After_End): New functions
2128         (First_Comment_Before, First_Comment_Before_End): New functions
2129         (Next_Comment): New function
2130         (End_Of_Line_Comment, Follows_Empty_Line,
2131         Is_Followed_By_Empty_Line): New functions
2132         (Set_First_Comment_After, Set_First_Comment_After_End): New procedures
2133         (Set_First_Comment_Before, Set_First_Comment_Before_End): New procedures
2134         (Set_Next_Comment): New procedure
2135         (Default_Project_Node): Associate comment before if the node can store
2136         comments.
2138         * scans.ads (Token_Type): New enumeration value Tok_Comment
2139         (Comment_Id): New global variable
2141         * scng.ads, scng.adb (Comment_Is_Token): New Boolean global variable,
2142         defaulted to False.
2143         (Scan): Store position of start of comment. If comments are tokens, set
2144         Comment_Id and set Token to Tok_Comment when scanning a comment.
2145         (Set_Comment_As_Token): New procedure
2147         * sinput-p.adb: Update Copyright notice
2148         (Source_File_Is_Subunit): Call Prj.Err.Scanner.Scan instead of Prj.Scan
2149         that no longer exists.
2151 2003-12-08  Javier Miranda  <miranda@gnat.com>
2153         * sem_aggr.adb: Add dependence on Exp_Tss package
2154         Correct typo in comment
2155         (Resolve_Aggregate): In case of array aggregates set the estimated
2156         type of the aggregate before calling resolve. This is needed to know
2157         the name of the corresponding IP in case of limited array aggregates.
2158         (Resolve_Array_Aggregate): Delay the resolution to the expansion phase
2159         in case of default initialized array components.
2161         * sem_ch12.adb (Analyze_Formal_Object_Declaration): Allow limited
2162         types. Required to give support to limited aggregates in generic
2163         formals.
2165 2003-12-08  Ed Schonberg  <schonberg@gnat.com>
2167         * sem_ch3.adb (Check_Initialization): For legality purposes, an
2168         inlined body functions like an instantiation.
2169         (Decimal_Fixed_Point_Declaration): Do not set kind of first subtype
2170         until bounds are analyzed, to diagnose premature use of type.
2172         * sem_util.adb (Wrong_Type): Improve error message when the type of
2173         the expression is used prematurely.
2175 2003-12-08  GNAT Script  <nobody@gnat.com>
2177         * Make-lang.in: Makefile automatically updated
2179 2003-12-08  Arnaud Charlet  <charlet@act-europe.fr>
2181         * sinfo.h, einfo.h, nmake.ads, nmake.adb, treeprs.ads: Removed, since
2182         they are automatically generated by Make-lang.in and cause nothing but
2183         maintenance troubles.
2185 2003-12-05  Thomas Quinot  <quinot@act-europe.fr>
2187         * 3ssoliop.ads: Fix comment (this is the Solaris, not the UnixWare,
2188         version of this unit).
2190 2003-12-05  Olivier Hainque  <hainque@act-europe.fr>
2192         * 53osinte.ads, 54osinte.ads, 55osinte.ads, 56osinte.ads, 5bosinte.ads,
2193         5cosinte.ads, 5hosinte.ads, 5iosinte.ads, 5losinte.ads,
2194         5tosinte.ads: Define the SA_SIGINFO constant, to allow references from
2195         the body of System.Interrupt_Management common to several targets.
2196         Update copyright notice when appropriate.
2198         * 52osinte.ads, 5posinte.ads: Define a dummy value for the SA_SIGINFO
2199         constant.
2201         * 7sintman.adb (elaboration): Set SA_SIGINFO in the sigaction flags,
2202         to ensure that the kernel fills in the interrupted context structure
2203         before calling a signal handler, which is necessary to be able to
2204         unwind past it. Update the copyright notice.
2206 2003-12-05  Jerome Guitton  <guitton@act-europe.fr>
2208         * a-elchha.ads: New file.
2210         * a-elchha.adb: New default last chance handler. Contents taken from
2211         Ada.Exceptions.Exception_Traces.Unhandled_Exception_Terminate.
2213         * a-exextr.adb (Unhandled_Exception_Terminate): Most of this routine
2214         is moved to a-elchha.adb to provide a target-independent default last
2215         chance handler.
2217         * Makefile.rtl: Add a-elchha.o
2219         * Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add a-elchha.o.
2221 2003-12-05  Ed Schonberg  <schonberg@gnat.com>
2223         * exp_ch6.adb (Expand_Call): If the subprogram is inlined and is
2224         declared in an instance, do not inline the call if the instance is not
2225         frozen yet, to prevent order of elaboration problems.
2227         * sem_prag.adb: Add comments for previous fix.
2229 2003-12-05  Samuel Tardieu  <tardieu@act-europe.fr>
2231         * g-table.adb: Use the right variable in Set_Item.
2232         Update copyright notice.
2234 2003-12-05  Arnaud Charlet  <charlet@act-europe.fr>
2236         * Makefile.in: Remove unused rules.
2238 2003-12-05  Vincent Celier  <celier@gnat.com>
2240         * switch-c.adb (Scan_Front_End_Switches): Remove processing of
2241         -nostdlib. Not needed here after all.
2243 2003-12-03  Thomas Quinot  <quinot@act-europe.fr>
2245         PR ada/11724
2247         * adaint.h, adaint.c, g-os_lib.ads:
2248         Do not assume that the offset argument to lseek(2) is a 32 bit integer,
2249         on some platforms (including FreeBSD), it is a 64 bit value.
2250         Introduce a __gnat_lseek wrapper in adaint.c to allow for portability.
2252 2003-12-03  Arnaud Charlet  <charlet@act-europe.fr>
2254         * gnatvsn.ads (Library_Version): Now contain only the relevant
2255         version info.
2256         (Verbose_Library_Version): New constant.
2258         * g-spipat.adb, g-awk.adb, g-debpoo.adb,
2259         g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb,
2260         s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa.
2262         * gnatlbr.adb: Clean up: replace Library_Version by
2263         Verbose_Library_Version.
2265         * make.adb, lib-writ.adb, exp_attr.adb:
2266         Clean up: replace Library_Version by Verbose_Library_Version.
2268         * 5lintman.adb: Removed.
2270         * Makefile.in:
2271         Update and simplify computation of LIBRARY_VERSION.
2272         Fix computation of GSMATCH_VERSION.
2273         5lintman.adb is no longer used: replaced by 7sintman.adb.
2275 2003-12-03  Robert Dewar  <dewar@gnat.com>
2277         * exp_ch5.adb:
2278         (Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new
2279         name. Modified to consider small non-bit-packed arrays as troublesome
2280         and in need of component-by-component assigment expansion.
2282 2003-12-03  Vincent Celier  <celier@gnat.com>
2284         * lang-specs.h: Process nostdlib as nostdinc
2286         * back_end.adb: Update Copyright notice
2287         (Scan_Compiler_Arguments): Process -nostdlib directly.
2289 2003-12-03  Jose Ruiz  <ruiz@act-europe.fr>
2291         * Makefile.in:
2292         When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the
2293         redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always
2294         included in HIE_NONE_TARGET_PAIRS.
2296 2003-12-03  Ed Schonberg  <schonberg@gnat.com>
2298         * sem_attr.adb:
2299         (Legal_Formal_Attribute): Attribute is legal in an inlined body, as it
2300         is legal in an instance, because legality is cheched in the template.
2302         * sem_prag.adb:
2303         (Analyze_Pragma, case Warnings): In an inlined body, the pragma may be
2304         appplied to an unchecked conversion of a formal parameter.
2306         * sem_warn.adb:
2307         (Output_Unreferenced_Messages): Suppress "not read" warnings on imported
2308         variables.
2310 2003-12-03  Olivier Hainque  <hainque@act-europe.fr>
2312         * tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New
2313         routines. The second one is new functionality to deal with backtracing
2314         through signal handlers.
2315         (unwind): Split into the two separate subroutines above.
2316         Update the documentation, and deal properly with sizeof (REG) different
2317         from sizeof (void*).
2319 2003-12-01  Nicolas Setton  <setton@act-europe.fr>
2321         * a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point,
2322         so that the debugger can reliably access the value of the parameter,
2323         and therefore is able to display the exception name when an exception
2324         breakpoint is reached.
2326 2003-12-01  Thomas Quinot  <quinot@act-europe.fr>
2328         * fmap.adb: Fix typo in warning message.
2330         * g-socket.ads, g-socket.adb: Make Free a visible instance of
2331         Ada.Unchecked_Deallocation (no need to wrap it in a subprogram).
2333 2003-12-01  Vincent Celier  <celier@gnat.com>
2335         * mlib-prj.adb (Build_Library.Process): Do not check a withed unit if
2336         ther is no Afile.
2337         (Build_Library): Get the switches only if Default_Switches is declared
2338         in package Binder.
2340 2003-12-01  Ed Schonberg  <schonberg@gnat.com>
2342         * exp_ch6.adb (Expand_Actuals): When applying validity checks to
2343         actuals that are indexed components, reanalyze actual to ensure that
2344         packed array references are properly expanded.
2346         * sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for
2347         attempted assignment to a discriminant.
2349 2003-12-01  Robert Dewar  <dewar@gnat.com>
2351         * rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor
2352         reformatting.
2354         * switch-c.adb: Minor reformatting of comments
2356 2003-12-01  Arnaud Charlet  <charlet@act-europe.fr>
2358         * Makefile.in: Clean ups.
2360 2003-12-01  GNAT Script  <nobody@gnat.com>
2362         * Make-lang.in: Makefile automatically updated
2364 2003-12-01  Arnaud Charlet  <charlet@act-europe.fr>
2366         * 5wsystem.ads: Disable zero cost exception, not ready yet.
2368 2003-11-29  Ulrich Weigand  <uweigand@de.ibm.com>
2370         * Make-lang.in (nmake.ads): Add dependency on ada/nmake.adb
2371         to force serialization.
2373 2003-11-26  Thomas Quinot  <quinot@act-europe.fr>
2375         * g-socket.ads, g-socket.adb:
2376         Clarify documentation of function Stream. Introduce a Free procedure
2377         to release the returned Stream once it becomes unused.
2379         * 5asystem.ads: For Alpha Tru64, enable ZCX by default.
2381 2003-11-26  Arnaud Charlet  <charlet@act-europe.fr>
2383         (Cond_Timed_Wait): Introduce new constant Time_Out_Max,
2384         since NT 4 cannot handle timeout values that are too large,
2385         e.g. DWORD'Last - 1.
2387 2003-11-26  Ed Schonberg  <schonberg@gnat.com>
2389         * exp_ch4.adb:
2390         (Expand_N_Slice): Recognize all cases of slices that appear as actuals
2391         in procedure calls and whose expansion must be deferred.
2393         * exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix
2394         is in exp_ch4.
2396         * sem_ch3.adb:
2397         (Build_Derived_Array_Type): Create operator for unconstrained type
2398         if ancestor is unconstrained.
2400 2003-11-26  Vincent Celier  <celier@gnat.com>
2402         * make.adb (Project_Object_Directory): New global variable
2403         (Change_To_Object_Directory): New procedure
2404         (Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead
2405         of Change_Dir directly. Do not change working directory to object
2406         directory of main project after each compilation.
2407         (Gnatmake): Use Change_To_Object_Directory instead of Change_Dir
2408         directly.
2409         Change to object directory of main project before binding step.
2410         (Initialize): Initialize Project_Object_Directory to No_Project
2412         * mlib-prj.adb:
2413         (Build_Library): Take into account Builder'Default_Switches ("Ada") when
2414         binding a Stand-Alone Library.
2416         * output.adb: Update Copyright notice
2417         (Write_Char): Output buffer when full
2419 2003-11-26  Robert Dewar  <dewar@gnat.com>
2421         * sem_ch13.adb: (Check_Size): Reset size if size is too small
2423         * sem_ch13.ads:
2424         (Check_Size): Fix documentation to include bit-packed array case
2426         * sem_res.adb: Implement restriction No_Direct_Boolean_Operators
2428         * s-rident.ads: Put No_Direct_Boolean_Operators in proper order
2430         * s-rident.ads: Add new restriction No_Direct_Boolean_Operators
2432 2003-11-24  Arnaud Charlet <charlet@act-europe.fr>
2434         PR ada/13142
2435         * utils.c (init_gigi_decls): Change name of built-in setjmp to
2436         __builtin_setjmp, since this is apparently needed by recent
2437         non Ada changes.
2439 2003-11-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2441         * adadecode.c: Only include ctype.h if not IN_GCC.
2442         (__gnat_decode): Use ISDIGIT from safe-ctype.h.
2444 2003-11-24  Jose Ruiz  <ruiz@act-europe.fr>
2446         * Makefile.in:
2447         Use 5zintman.ads for VxWorks targets. This file avoid confusion between
2448         signals and interrupts.
2450         * 5zintman.ads: New File.
2452         * 5zintman.adb: Replace Exception_Interrupts by Exception_Signals, and
2453         add exception signals to the set of unmasked signals.
2455         * 5ztaprop.adb:
2456         Use Abort_Task_Signal instead of Abort_Task_Interrupt to avoid confusion
2457         between signals and interrupts.
2458         Add to Unblocked_Signal_Mask the set of signals that are in
2459         Keep_Unmasked.
2461         * 7sinmaop.adb:
2462         Adding a check to see whether the Interrupt_ID we want to unmask is in
2463         the range of Keep_Unmasked (in procedure Interrupt_Self_Process). The
2464         reason is that the index type of the Keep_Unmasked array is not always
2465         Interrupt_ID; it may be a subtype of Interrupt_ID.
2467 2003-11-24  Gary Dismukes  <dismukes@gnat.com>
2469         * exp_util.adb:
2470         (Remove_Side_Effects): Condition constantness of object created for a
2471          an unchecked type conversion on the constantness of the expression
2472          to ensure the correct value for 'Constrained when passing components
2473          of view-converted class-wide objects.
2475 2003-11-24  Robert Dewar  <dewar@gnat.com>
2477         * par-load.adb (Load): Improve handling of misspelled and missing units
2478         Removes several cases of compilation abandoned messages
2480         * lib.adb: (Remove_Unit): New procedure
2482         * lib.ads: (Remove_Unit): New procedure
2484         * lib-load.adb: Minor reformatting
2486 2003-11-24  Vincent Celier  <celier@gnat.com>
2488         * make.adb:
2489         (Gnatmake, Initialize): Call Usage instead of Makeusg directly
2490         (Marking_Label): Label to mark processed source files. Incremented for
2491         each executable.
2492         (Gnatmake): Increase Marking_Labet for each executable
2493         (Is_Marked): Compare against marking label
2494         (Mark): Mark with marking label
2496 2003-11-24  Jerome Guitton  <guitton@act-europe.fr>
2498         * s-thread.ads:
2499         Move the declaration of the TSD for System.Threads to System.Soft_Links.
2500         Add some comments.
2502         * Makefile.in: Added target pair for s-thread.adb for cert runtime.
2503         (rts-cert): build a single relocatable object for the run-time lib.
2504         Fix perms.
2506 2003-11-24  Vasiliy Fofanov  <fofanov@act-europe.fr>
2508         * Make-lang.in:
2509         Use gnatls rather than gcc to obtain the location of GNAT RTL for
2510         crosstools build.
2512 2003-11-24  Sergey Rybin  <rybin@act-europe.fr>
2514         * opt.adb (Tree_Write): Gnat_Version_String is now a function, so we
2515         can not use it as before (that is, as a variable) when dumping it into
2516         the tree file. Add a local variable to store the result of this
2517         function and to be used as the string to be written into the tree.
2519         * scn.adb (Initialize_Scanner): Add comments explaining the recent
2520         changes.
2522         * sinput.adb (Source_First, Source_Last): In case of
2523         Internal_Source_File, replace returning attributes of
2524         Internal_Source_Ptr (which is wrong) with returning attributes of
2525         Internal_Source.
2527 2003-11-24  Ed Schonberg  <schonberg@gnat.com>
2529         * sem_ch3.adb:
2530         (New_Concatenation_Op): Proper name for New_Binary_Operator, only
2531         used for implicit concatenation operators.
2532         Code cleanup.
2534         * sem_elab.adb:
2535         (Check_Elab_Call): Set No_Elaboration_Check appropriately on calls in
2536         task bodies that are in the scope of a Suppress pragma.
2537         (Check_A Call): Use the flag to prevent spurious elaboration checks.
2539         * sinfo.ads, sinfo.adb:
2540         New flag No_Elaboration_Check on function/procedure calls, to properly
2541         suppress checks on calls in task bodies that are within a local suppress
2542         pragma.
2544         * exp_ch4.adb:
2545         (Expand_Concatenate_Other): Use the proper integer type for the
2546         expression for the upper bound, to avoid universal_integer computations
2547         when possible.
2549 2003-11-21  Kelley Cook  <kcook@gcc.gnu.org>
2551         * .cvsignore: Delete.
2553 2003-11-21  Andreas Schwab  <schwab@suse.de>
2555         * 55system.ads: Set ZCX_By_Default and GCC_ZCX_Support to True.
2557 2003-11-21  Vasiliy Fofanov  <fofanov@act-europe.fr>
2559         * 5wsystem.ads: Enable zero cost exception.
2561 2003-11-21  Jerome Guitton  <guitton@act-europe.fr>
2563         * 5ztiitho.adb: Remove an unreferenced variable.
2565 2003-11-21  Thomas Quinot  <quinot@act-europe.fr>
2567         * adaint.c: For FreeBSD, use mkstemp.
2569 2003-11-21  Arnaud Charlet  <charlet@act-europe.fr>
2571         * gnatlbr.adb: Now reference Gnat_Static_Version_String.
2573 2003-11-21  Robert Dewar  <dewar@gnat.com>
2575         * bld.adb: Remove useless USE of gnatvsn
2577         * gnatchop.adb: Minor reformatting
2578         Clean up version handling to be more consistent
2580         * gnatxref.adb: Minor reformatting
2582         * gprcmd.adb: Minor reformatting
2583         Fix output of copyright to be more consistent with other tools
2585 2003-11-21  Vincent Celier  <celier@gnat.com>
2587         * make.adb (Scan_Make_Args): Do not transmit --RTS= to gnatlink
2589 2003-11-21  Sergey Rybin  <rybin@act-europe.fr>
2591         * atree.adb (Initialize): Add initializations for global variables
2592         used in New_Copy_Tree.
2594         * cstand.adb (Create_Standard): Add call to Initialize_Scanner (with
2595         Internal_Source_File as the actual).
2596         Put the set of statements creating Any_Character before the set of
2597         statements creating Any_Array to have Any_Character fully initialized
2598         when it is used in creating Any_Array.
2600         * scn.adb (Initialize_Scanner): Do not set Comes_From_Source ON and do
2601         not call Scan in case if the actual is Internal_Source_File
2602         Add 2003 to copyright note.
2604         * sinput.adb (Source_First, Source_Last, Source_Text): Add code for
2605         processing Internal_Source_File.
2607         * types.ads: Add the constant Internal_Source_File representing the
2608         source buffer for artificial source-code-like strings created within
2609         the compiler (the definition of Source_File_Index is changed).
2611 2003-11-20  Arnaud Charlet  <charlet@act-europe.fr>
2613         * 35soccon.ads, 45intnam.ads, 55osinte.adb, 55osinte.ads,
2614         56system.ads: New file, FreeBSD version.
2616 2003-11-20  Joseph S. Myers  <jsm@polyomino.org.uk>
2618         * Make-lang.in (ada.extraclean): Delete.
2620 2003-11-19  Arnaud Charlet  <charlet@act-europe.fr>
2622         * gnatmem.adb: Clean up verbose output.
2624         * gprcmd.adb: Change copyright to FSF.
2626 2003-11-19  Vincent Celier  <celier@gnat.com>
2628         * symbols.adb: (Initialize): New parameters Reference, Symbol_Policy
2629         and Version (ignored).
2631         * symbols.ads: (Policy): New type
2632         (Initialize): New parameter Reference, Symbol_Policy and
2633         Library_Version.
2634         Remove parameter Force.
2635         Minor reformatting.
2637         * snames.ads, snames.adbadb: New standard names
2638         Library_Reference_Symbol_File and Library_Symbol_Policy
2640         * mlib-prj.adb:
2641         (Build_Library): Call Build_Dinamic_Library with the Symbol_Data of the
2642         project.
2644         * mlib-tgt.adb:
2645         (Build_Dynamic_Library): New parameter Symbol_Data (ignored)
2647         * mlib-tgt.ads: (Build_Dynamic_Library): New parameter Symbol_Data
2649         * prj.adb: (Project_Empty): New component Symbol_Data
2651         * prj.ads: (Policy, Symbol_Record): New types
2652         (Project_Data): New component Symbol_Data
2654         * prj-attr.adb:
2655         New attributes Library_Symbol_File, Library_Symbol_Policy and
2656         Library_Reference_Symbol_File.
2658         * prj-nmsc.adb:
2659         (Ada_Check): When project is a Stand-Alone library project, process
2660         attribute Library_Symbol_File, Library_Symbol_Policy and
2661         Library_Reference_Symbol_File.
2663         * 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb,
2664         5wml-tgt.adb, 5zml-tgt.adb, 5lml-tgt.adb,
2665         5sml-tgt.adb (Build_Dynamic_Library): New parameter
2666         Symbol_Data (ignored).
2668         * 5vml-tgt.adb (VMS_Options): Remove --for-linker=gsmatch=equal,1,0
2669         (Build_Dynamic_Library): New parameter Symbol_Data. New internal
2670         functions Option_File_Name and Version_String. Set new options of
2671         gnatsym related to symbol file, symbol policy and reference symbol
2672         file.
2674         * 5vsymbol.adb:
2675         Extensive modifications to take into account the reference symbol file,
2676         the symbol policy, the library version and to put in the symbol file the
2677         minor and major IDs.
2679         * bld.adb (Process_Declarative_Items): Put second argument of
2680         gprcmd to_absolute between single quotes, to avoid problems with
2681         Windows.
2683         * bld-io.adb: Update Copyright notice.
2684         (Flush): Remove last character of a line, if it is a back slash, to
2685         avoid make problems.
2687         * gnatsym.adb:
2688         Implement new scheme with reference symbol file and symbol policy.
2690         * g-os_lib.ads: (Is_Directory): Clarify comment
2692 2003-11-19  Robert Dewar  <dewar@gnat.com>
2694         * atree.adb: Move New_Copy_Tree global variables to head of package
2696         * errout.adb: Minor reformatting
2698 2003-11-19  Javier Miranda  <miranda@gnat.com>
2700         * sem_ch4.adb: (Diagnose_Call): Improve error message.
2701         Add reference to Ada0Y (AI-50217)
2703         * sem_ch6.adb, sem_ch8.adb, sem_type.adb,
2704         sem_util.adb: Add reference to AI-50217
2706         * sinfo.ads: (N_With_Clause): Document fields referred to AI-50217
2708         * sprint.adb: Add reference to Ada0Y (AI-50217, AI-287)
2710         * sem_aggr.adb: Complete documentation of AI-287 changes
2712         * par-ch4.adb: Document previous changes.
2714         * lib-load.adb, lib-writ.adb, einfo.ads, par-ch10.adb,
2715         sem_cat.adb, sem_ch3.adb, sem_ch10.adb, sem_ch12.adb: Add references to
2716         Ada0Y (AI-50217)
2718         * exp_aggr.adb: Add references to AI-287 in previous changes
2720 2003-11-19  Ed Schonberg  <schonberg@gnat.com>
2722         * exp_ch6.adb:
2723         (Add_Call_By_Copy_Node): Do not original node of rewritten expression
2724         in the rewriting is the result of an inlined call.
2726         * exp_ch6.adb (Add_Call_By_Copy_Node): If actual for (in-)out
2727         parameter is a type conversion, use original node to construct the
2728         post-call assignment, because expression may have been rewritten, e.g.
2729         if it is a packed array.
2731         * sem_attr.adb:
2732         (Resolve_Attribute, case 'Constrained): Attribute is legal in an inlined
2733         body, just as it is in an instance.
2734         Categorization routines
2736         * sem_ch12.adb (Analyze_Association, Instantiate_Formal_Subprogram,
2737         Instantiate_Object): Set proper sloc reference for message on missing
2738         actual.
2740 2003-11-19  Thomas Quinot  <quinot@act-europe.fr>
2742         * Makefile.in: Add FreeBSD libgnat pairs.
2744         * usage.adb: Fix typo in usage message.
2746 2003-11-19  Jerome Guitton  <guitton@act-europe.fr>
2748         * Makefile.in: On powerpc-wrs-vxworksae: Add s-thread.ad?,
2749         s-thrini.ad? and s-tiitho.adb to the full runtime, to support the
2750         pragma Thread_Body.
2751         Remove i-vthrea.ad? and s-tpae65.ad?, not needed anymore.
2753         * s-thread.adb: This file is now a dummy implementation of
2754         System.Thread.
2756 2003-11-19  Sergey Rybin  <rybin@act-europe.fr>
2758         * rtsfind.adb (Initialize): Add initialization for RTE_Is_Available
2760 2003-11-19  Emmanuel Briot  <briot@act-europe.fr>
2762         * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
2763         instanciation references in the parent type description.
2765 2003-11-18  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2767         * ada-tree.def: (ALLOCATE_EXPR): Class is "2", not "s".
2769         * decl.c (gnat_to_gnu_entity, case E_Floating_Point_Subtype): Set
2770         TYPE_PRECISION directly from esize.
2772 2003-11-18  Thomas Quinot  <quinot@act-europe.fr>
2774         * cstreams.c:
2775         Use realpath(3) on FreeBSD. Fix typo in comment while we are at it.
2777         * init.c: Initialization routines for FreeBSD
2779         * link.c: Link info for FreeBSD
2781         * sysdep.c: Add the case of FreeBSD
2783 2003-11-17  Jerome Guitton  <guitton@act-europe.fr>
2785         * 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is
2786         already called in System.Threads.
2788         * 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the
2789         environment task, as it has been moved to System.Threads.Initialization.
2791 2003-11-17  Arnaud Charlet  <charlet@act-europe.fr>
2793         * adaint.c (__gnatlib_install_locks): Only reference
2794         __gnat_install_locks on VMS, since other platforms can avoid using
2795         --enable-threads=gnat
2797 2003-11-17  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
2799         * ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro.
2801         * decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set
2802         TYPE_PACKED_ARRAY_TYPE_P.
2803         (validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P.
2805         Part of PR ada/12806
2806         * utils.c (float_type_for_precision): Renamed from float_type_for_size.
2807         Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE.
2809 2003-11-17  Vincent Celier  <celier@gnat.com>
2811         * gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted
2812         to False.
2813         Do not set exit status to Failure when Warning is True.
2814         (Gnatchop): Make errors "no compilation units found" and
2815         "no source files written" warnings only.
2817         * make.adb (Gnatmake): When using a project file, set
2818         Look_In_Primary_Dir to False.
2819         (Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas
2820         and Local_Configuration_Pragmas in the project where they are declared
2821         not an extending project which might have inherited them.
2823         * osint.adb (Locate_File): If Name is already an absolute path, do not
2824         look for a directory.
2826         * par-ch10.adb (P_Compilation_Unit): If source contains no token, and
2827         -gnats (Check_Syntax) is used, issue only a warning, not an error.
2829         * prj.adb (Register_Default_Naming_Scheme): Add new component Project
2830         in objects of type Variable_Value.
2832         * prj.ads: (Variable_Value): New component Project
2834         * prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source
2835         is in a project extended by Project.
2837         * prj-proc.adb (Add_Attributes): New parameter Project. Set component
2838         Project of Variable_Values to this new parameter value.
2839         (Expression): Set component Project of Variable_Values.
2840         (Process_Declarative_Items): Call Add_Attributes with parameter Project.
2841         Set the component Project in array elements.
2843 2003-11-17  Sergey Rybin  <rybin@act-europe.fr>
2845         * errout.adb: (Initialize): Add initialization for error nodes.
2847         * sem_ch12.adb (Initialize): Add missing initializations for
2848         Exchanged_Views and Hidden_Entities.
2850 2003-11-17  Ed Schonberg  <schonberg@gnat.com>
2852         * sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an
2853         already instantiated tree for use in subsequent inlining.
2854         (Analyze_Associations, Instantiate_Formal_Subprogram,
2855         Instantiate_Object): improve error message for mismatch in
2856         instantiations.
2858         * sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle
2859         instantiations of subprograms declared in instances.
2861 2003-11-17  Javier Miranda  <miranda@gnat.com>
2863         * sem_ch4.adb (Analyze_Allocator): Previous modification must be
2864         executed only under the Extensions_Allowed flag.
2866 2003-11-17  Robert Dewar  <dewar@gnat.com>
2868         * a-exexda.adb (Address_Image): Fix documentation to indicate leading
2869         zeroes suppressed.
2870         (Address_Image): Fix bug of returning 0x instead of 0x0
2871         Minor reformatting (function specs).
2873         * einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array
2874         (missed case of 33-63)
2876         * freeze.adb, sem_ch13.adb: Properly check size of packed bit array
2878         * s-thread.adb: Add comments for pragma Restriction
2880         * exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb,
2881         sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting
2883 2003-11-17  Ed Falis  <falis@gnat.com>
2885         * s-thread.adb: Added No_Tasking restriction for this implementation.
2887 2003-11-17  Emmanuel Briot  <briot@act-europe.fr>
2889         * xref_lib.adb (Parse_Identifier_Info): Add handling of generic
2890         instanciation references in the parent type description.
2892 2003-11-17  GNAT Script  <nobody@gnat.com>
2894         * Make-lang.in: Makefile automatically updated
2896 2003-11-16  Jason Merrill  <jason@redhat.com>
2898         * Make-lang.in (ada.tags): Create TAGS.sub files in each directory
2899         and TAGS files that include them for each front end.
2901 2003-11-14  Andreas Jaeger  <aj@suse.de>
2903         * lang.opt: Change -Wno-long-long to -Wlong-long since the latter
2904         is the canonical version.
2905         * misc.c (gnat_handle_option): Likewise.
2907         * Makefile.in (LIBGNAT_TARGET_PAIRS): Add rules for x86_64-linux.
2909         * 5nsystem.ads: New file for x86_64-linux-gnu.
2911 2003-11-14  Arnaud Charlet  <charlet@act-europe.fr>
2913         * nmake.ads, nmake.adb, sinfo.h, treeprs.ads: Regenerated.
2915         * comperr.adb: Fix logic in previous change.
2917 2003-11-13  Vincent Celier  <celier@gnat.com>
2919         * 5bml-tgt.adb (Build_Dynamic_Library): Use
2920         Osint.Include_Dir_Default_Prefix instead of
2921         Sdefault.Include_Dir_Default_Name.
2923         * gnatlbr.adb: Update Copyright notice
2924         (Gnatlbr): : Use Osint.Include_Dir_Default_Prefix instead of
2925         Sdefault.Include_Dir_Default_Name and Osint.Object_Dir_Default_Prefix
2926         instead of Sdefault.Object_Dir_Default_Name
2928         * gnatlink.adb:
2929         (Process_Binder_File): Never suppress the option following -Xlinker
2931         * mdll-utl.adb:
2932         (Gcc): Use Osint.Object_Dir_Default_Prefix instead of
2933         Sdefault.Object_Dir_Default_Name.
2935         * osint.ads, osint.adb:
2936         (Include_Dir_Default_Prefix, Object_Dir_Default_Prefix): New functions
2937         Minor reformatting.
2939         * vms_conv.ads: Minor reformating
2940         Remove GNAT STANDARD and GNAT PSTA
2942         * vms_conv.adb:
2943         Allow GNAT MAKE to have several files on the command line.
2944         (Init_Object_Dirs): Use Osint.Object_Dir_Default_Prefix instead of
2945         Sdefault.Object_Dir_Default_Name.
2946         Minor Reformating
2947         Remove data for GNAT STANDARD
2949         * vms_data.ads:
2950         Add new compiler qualifier /PRINT_STANDARD (-gnatS)
2951         Remove data for GNAT STANDARD
2952         Remove options and documentation for -gnatwb/-gnatwB: these warning
2953         options no longer exist.
2955 2003-11-13  Ed Falis  <falis@gnat.com>
2957         * 5zthrini.adb: (Init_RTS): Made visible
2959         * 5zthrini.adb:
2960         (Register): Removed unnecessary call to taskVarGet that checked whether
2961          an ATSD was already set as a task var for the argument thread.
2963         * s-thread.adb:
2964         Updated comment to reflect that this is a VxWorks version
2965         Added context clause for System.Threads.Initialization
2966         Added call to System.Threads.Initialization.Init_RTS
2968 2003-11-13  Jerome Guitton  <guitton@act-europe.fr>
2970         * 5zthrini.adb:
2971         (Init_RTS): New procedure, for the initialization of the run-time lib.
2973         * s-thread.adb:
2974         Remove dependancy on System.Init, so that this file can be used in the
2975         AE653 sequential run-time lib.
2977 2003-11-13  Robert Dewar  <dewar@gnat.com>
2979         * bindgen.adb: Minor reformatting
2981 2003-11-13  Ed Schonberg  <schonberg@gnat.com>
2983         * checks.adb:
2984         (Apply_Discriminant_Check): Do no apply check if target type is derived
2985         from source type with no applicable constraint.
2987         * lib-writ.adb:
2988         (Ensure_System_Dependency): Do not apply the style checks that may have
2989         been specified for the main unit.
2991         * sem_ch8.adb:
2992         (Find_Selected_Component): Further improvement in error message, with
2993         RM reference.
2995         * sem_res.adb:
2996         (Resolve): Handle properly the case of an illegal overloaded protected
2997         procedure.
2999 2003-11-13  Javier Miranda  <miranda@gnat.com>
3001         * exp_aggr.adb:
3002         (Has_Default_Init_Comps): New function to check the presence of
3003         default initialization in an aggregate.
3004         (Build_Record_Aggr_Code): Recursively expand the ancestor in case of
3005         extension aggregate of a limited record. In addition, a new formal
3006         was added to do not initialize the record controller (if any) during
3007         this recursive expansion of ancestors.
3008         (Init_Controller): Add support for limited record components.
3009         (Expand_Record_Aggregate): In case of default initialized components
3010         convert the aggregate into a set of assignments.
3012         * par-ch4.adb (P_Aggregate_Or_Paren_Expr): Update the comment
3013         describing the new syntax.
3014         Nothing else needed to be done because this subprogram delegates part of
3015         its work to P_Precord_Or_Array_Component_Association.
3016         (P_Record_Or_Array_Component_Association): Give support to the new
3017         syntax for default initialization of components.
3019         * sem_aggr.adb:
3020         (Resolve_Aggregate): Relax the strictness of the frontend in case of
3021         limited aggregates.
3022         (Resolve_Record_Aggregate): Give support to default initialized
3023         components.
3024         (Get_Value): In case of default initialized components, duplicate
3025         the corresponding default expression (from the record type
3026         declaration). In case of default initialization in the *others*
3027         choice, do not check that all components have the same type.
3028         (Resolve_Extension_Aggregate): Give support to limited extension
3029         aggregates.
3031         * sem_ch3.adb:
3032         (Check_Initialization): Relax the strictness of the front-end in case
3033         of aggregate and extension aggregates. This test is now done in
3034         Get_Value in a per-component manner.
3036         * sem_ch4.adb (Analyze_Allocator): Don't post an error if the
3037         expression corresponds to a limited aggregate. This test is now done
3038         in Get_Value.
3040         * sinfo.ads, sinfo.adb (N_Component_Association): Addition of
3041         Box_Present flag.
3043         * sprint.adb (Sprint_Node_Actual): Modified to print an mbox if
3044         present in an N_Component_Association node
3046 2003-11-13  Thomas Quinot  <quinot@act-europe.fr>
3048         * sem_ch9.adb (Analyze_Accept_Statement): A procedure hides a
3049         type-conformant entry only if they are homographs.
3051 2003-11-13  GNAT Script  <nobody@gnat.com>
3053         * Make-lang.in: Makefile automatically updated
3055 2003-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3057         * adadecode.c: Use <> form of include for ctype.h.
3058         * sysdep.c [IN_RTS]: Use <> form of include for time.h.
3060 2003-11-12  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3062         * 5gsystem.ads (Functions_Return_By_DSP): Set to False.
3063         Works around PR middle-end/6552.
3065 2003-11-10  Ed Falis  <falis@gnat.com>
3067         * 5ytiitho.adb: (procStartHookAdd): Definition and call deleted
3069         * 5zinit.adb: (Install_Handler): Moved back to spec
3070         (Install_Signal_Handlers): Deleted
3072         * 5zthrini.adb: Added context clause for System.Storage_Elements
3073         (Register): Only handles creation of taskVar; initialization moved to
3074         Thread_Body_Enter.
3075         (Reset_TSD): Deleted; replaced by Thread_Body_Enter
3076         Added declaration of environment task secondary stack and
3077         initialization.
3079         * s-thread.adb: Implement bodies for thread body processing
3081         * s-thread.ads:
3082         Added comment identifying supported targets for pragma Thread_Body.
3084 2003-11-10  Pascal Obry  <obry@gnat.com>
3086         * adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than
3087         GNAT_MAX_PATH_LEN.
3089         * s-fileio.adb:
3090         (Open): Properly check for string length before copying into the buffer.
3091         Raises Name_Error if buffer is too small. Note that this was a potential
3092         buffer overflow.
3094 2003-11-10  Romain Berrendonner  <berrendo@act-europe.fr>
3096         * bindgen.adb, comperr.adb: Code clean ups.
3097         * gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function.
3099 2003-11-10  Sergey Rybin  <rybin@act-europe.fr>
3101         * gnat1drv.adb: Add call to Sem_Elim.Initialize.
3103 2003-11-10  Vincent Celier  <celier@gnat.com>
3105         * gprcmd.adb:
3106         (Gprcmd): Add new command "prefix" to get the prefix of the GNAT
3107         installation.
3109         * make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler
3111         * prj.adb: (Project_Empty): Add new boolean component Virtual
3113         * prj.ads: (Virtual_Prefix): New constant string
3114         (Project_Data): New boolean component Virtual
3116         * prj-nmsc.adb (Language_Independent_Check): Adjust error message when
3117         a library project is extended by a virtual extending project.
3119         * prj-part.adb:
3120         Modifications throughout to implement extending-all project, including:
3121         (Virtual_Hash, Processed_Hash): New hash tables
3122         (Create_Virtual_Extending_Project): New procedure
3123         (Look_For_Virtual_Projects_For): New procedure
3125         * prj-proc.adb:
3126         (Process): After checking the projects, if main project is an
3127         extending-all project, set the object directory of all virtual extending
3128         project to the object directory of the main project.
3129         Adjust error message when a virtual extending project has the same
3130         object directory as an project being extended.
3131         (Recursive_Process): If name starts with the virtual prefix, set Virtual
3132         to True in the project data.
3134         * prj-tree.adb:
3135         (Default_Project_Node): Add new boolean component Extending_All
3136         (Is_Extending_All): New function
3137         (Set_Is_Extending_All): New procedure
3139         * prj-tree.ads: (Is_Extending_All): New function
3140         (Set_Is_Extending_All): New procedure
3141         (Project_Node_Record): New boolean component Extending_All
3143         * switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib
3145         * vms_data.ads:
3146         Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler
3148         * bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call
3149         "gprcmd prefix" to define it.
3151 2003-11-10  Thomas Quinot  <quinot@act-europe.fr>
3153         * einfo.ads: Fix a typo and remove an extraneous word in comments.
3155         * lib-load.adb:
3156         (Create_Dummy_Package_Unit): Set the scope of the entity for the
3157         created dummy package to Standard_Standard, not to itself, to
3158         defend other parts of the front-end against encoutering a cycle in
3159         the scope chain.
3161         * sem_ch10.adb:
3162         (Analyze_With_Clause): When setting the entities for the successive
3163         N_Expanded_Names that constitute the name of a child unit, do not
3164         attempt to go further than Standard_Standard in the chain of scopes.
3165         This case arises from the placeholder units created by
3166         Create_Dummy_Package_Unit in the case of a with_clause for a
3167         nonexistent child unit.
3169 2003-11-10  Ed Schonberg  <schonberg@gnat.com>
3171         * exp_ch6.adb:
3172         (Expand_Thread_Body): Place subprogram on scope stack, so that new
3173         declarations are given the proper scope.
3175         * sem_ch13.adb:
3176         (Check_Expr_Constants): Reject an expression that contains a constant
3177         created during expansion, and that appears after the object to which
3178         the address clause applies.
3180         * sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of
3181         Analyze_Iteration_Scheme, to rewrite a loop parameter specification
3182         that uses 'Range of a function call with controlled components, so
3183         that the function result can be finalized before starting the loop.
3185         * sem_ch8.adb:
3186         (Find_Selected_Component): Improve error message when prefix is
3187         an implicit dereference of an incomplete type.
3189 2003-11-10  Robert Dewar  <dewar@gnat.com>
3191         * opt.ads: New Print_Standard flag for -gnatS switch
3193         * sem_ch13.adb: Remove some additional checks for unaligned arrays
3195         * cstand.adb (Create_Standard): Print out package standard if -gnatS
3196         switch set
3198         * debug.adb: Update doc for -gnatds to discuss relationship with new
3199         -gnatS flag
3201         * sinfo.adb: Add new field Entity_Or_Associated_Node
3203         * sinfo.ads: Add new field Entity_Or_Associated_Node
3204         Update documentation for Associated_Node and Entity fields to clarify
3205         relationship and usage.
3207         * sprint.adb:
3208         (Write_Id): Properly process Associated_Node field in generic template
3210         * switch-c.adb:
3211         Recognize new -gnatS switch for printing package Standard
3212         This replaces gnatpsta
3214         * usage.adb:
3215         Add line for  new -gnatS switch for printing package Standard
3216         This replaces gnatpsta
3218 2003-11-10  Andreas Jaeger  <aj@suse.de>
3220         * 7sosprim.adb: tv_usec of struct_timeval and time_t are long
3221         integer.
3223 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
3225         * misc.c, lang.opt: Add handling of -nostdlib, now recognized/needed
3226         by gnat1.
3228 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
3230         * Makefile.in, Make-lang.in: Remove build of gnat_wrapper and gnatpsta,
3231         no longer needed.
3233         * gnatpsta.adb, gnat_wrapper.adb: Removed, no longer needed.
3235         * sysdep.c: Add handling of cygwin.
3237 2003-11-10  GNAT Script  <nobody@gnat.com>
3239         * Make-lang.in: Makefile automatically updated
3241 2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>
3243         PR 12950
3244         * osint.ads, osint.adb (Relocate_Path, Executable_Suffix): New
3245         functions. Used to handle dynamic prefix relocation, via set_std_prefix.
3246         Replace GNAT_ROOT by GCC_ROOT.
3248         * Make-lang.in: Use new function Relocate_Path to generate sdefault.adb
3250 2003-11-06  Zack Weinberg  <zack@codesourcery.com>
3252         * misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION
3253         and update for changed meaning of GET_MODE_BITSIZE.
3255 2003-11-04  Doug Rupp  <rupp@gnat.com>
3257         * sysdep.c: Problem discovered during IA64 VMS port.
3258         [VMS] #include <unixio.h> to get proper prototypes.
3260         * adaint.c:
3261         Issues discovered/problems fixed during IA64 VMS port.
3262         [VMS] #define _POSIX_EXIT for proper semantics.
3263         [VMS] #include <unixio.h> for proper prototypes.
3264         [VMS] (fork): #define IA64 version.
3265         (__gnat_os_exit): Remove unnecessary VMS specific code.
3267 2003-11-04  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3269         Part of PR ada/12806
3271         * ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as
3272         tree, not integer.
3274         * decl.c:
3275         (gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree,
3276         not integer.
3278         * targtyps.c, decl.c, misc.c,
3279         gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary
3280         routines to work around change in FP sizing semantics in GCC.
3282         * utils.c:
3283         (build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer.
3285         * gigi.h: (enumerate_modes): New function.
3287         * Make-lang.in: (ada/misc.o): Add real.h.
3289         * misc.c: (enumerate_modes): New function.
3291 2003-11-04  Robert Dewar  <dewar@gnat.com>
3293         * 3vtrasym.adb: Minor reformatting
3294         Use terminology encoded/decoded name, rather than C++ specific notion
3295         of mangling (this is the terminology used throughout GNAT).
3297         * einfo.h: Regenerated
3299         * einfo.ads, einfo.adb: Add new flag Is_Thread_Body
3301         * exp_ch6.adb:
3302         (Expand_N_Subprogram_Body): Handle expansion of thread body procedure
3304         * par-prag.adb: Add dummy entry for Thread_Body pragma
3306         * rtsfind.ads:
3307         Add entries for System.Threads entities for thread body processing
3309         * sem_attr.adb:
3310         (Analyze_Pragma, Access attributes): Check these are not applied to a
3311         thread body, since this is not permitted
3313         * sem_prag.adb: Add processing for Thread_Body pragma.
3314         Minor comment fix.
3316         * sem_res.adb:
3317         (Resolve_Call): Check for incorrect attempt to call a thread body
3318          procedure with a direct call.
3320         * snames.ads, snames.adb: Add entry for Thread_Body pragma
3321         Add names associated with thread body expansion
3323         * snames.h: Add entry for Thread_Body pragma
3325         * s-thread.adb: Add entries for thread body processing
3326         These are dummy bodies so far
3328         * s-thread.ads: Add documentation on thread body handling.
3329         Add entries for thread body processing.
3331 2003-11-04  Javier Miranda  <miranda@gnat.com>
3333         * sem_ch10.adb:
3334         (Build_Limited_Views): Return after posting an error in case of limited
3335         with_clause on subprograms, generics, instances or generic renamings
3336         (Install_Limited_Withed_Unit): Do nothing in case of limited with_clause
3337         on subprograms, generics, instances or generic renamings
3339 2003-11-04  Arnaud Charlet  <charlet@act-europe.fr>
3341         * raise.c (setup_to_install): Correct mistake in last revision; two
3342         arguments out of order.
3344         * trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c,
3345         gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright
3346         notice, missed in previous change.
3347         Remove trailing blanks and other style errors introduced in previous
3348         change.
3350 2003-11-04  Olivier Hainque  <hainque@act-europe.fr>
3352         * decl.c (gnat_to_gnu_field): Adjust the conditions under which we get
3353         rid of the wrapper for a LJM type, ensuring we don't do that if the
3354         field is addressable.  This avoids potential low level type view
3355         mismatches later on, for instance in a by-reference argument passing
3356         process.
3358 2003-11-04  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3360         * decl.c (gnat_to_gnu_field): No longer check for BLKmode being
3361         aligned at byte boundary.
3363 2003-11-04  Joel Brobecker  <brobecker@gnat.com>
3365         * decl.c (components_to_record): Do not delete the empty variants from
3366         the end of the union type.
3368 2003-11-04  Ed Schonberg  <schonberg@gnat.com>
3370         * exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive
3371         operation for a derived type, an explicit declaration may use a local
3372         subtype of Boolean.
3374 2003-11-04  Vincent Celier  <celier@gnat.com>
3376         * make.adb (Gnatmake): Allow main sources on the command line with a
3377         library project when it is only for compilation (no binding or
3378         linking).
3380 2003-11-04  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3382         * Makefile.in: Remove many duplicate variables.
3384 2003-11-03  Kelley Cook  <kcook@gcc.gnu.org>
3386         * Make-lang.in (dvi): Move targets to $(docobjdir).
3387         (gnat_ug_vms.dvi): Simplify rule and adjust target.
3388         (gnat_ug_wnt.dvi): Likewise.
3389         (gnat_ug_unx.dvi): Likewise.
3390         (gnat_ug_vxw.dvi): Likewise.
3391         (gnat_rm.dvi): Likewise.
3392         (gnat-style.dvi): Likewise.
3394 2003-10-31  Kelley Cook  <kcook@gcc.gnu.org>
3396         * gigi.h: Missed commit from update for C90.
3398 2003-10-31  Kelley Cook  <kcook@gcc.gnu.org>
3400         * Makefile.in (ada/b_gnat1.o): Compile with -Wno-error.
3402 2003-10-31  Andreas Schwab  <schwab@suse.de>
3404         * raise.c (get_action_description_for): Fix typo in last change.
3406 2003-10-31  Nathanael Nerode  <neroden@gcc.gnu.org>
3408         PR ada/12761
3409         * ada/Make-lang.in: Move default definitions of X_ADA_CFLAGS,
3410         T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from here to master Makefile.in.
3412 2003-10-30  Kelley Cook  <kcook@gcc.gnu.org>
3414         * adadecode.c, adaint.c, argv.c, aux-io.c, cal.c, cio.c, cstreams.c,
3415         ctrl_c.c, cuintp.c, decl.c, errno.c, exit.c, expect.c, final.c,
3416         gigi.h, gmem.c, gnatbl.c, init.c, misc.c, mkdir.c, raise.c, socket.c,
3417         sysdep.c, sysdep.c, targtyps.c, tb-alvms.c, tb-alvxw.c, tracebak.c,
3418         trans.c, utils.c, utils2.c: Convert function prototypes to C90.
3420 2003-10-30  Vasiliy Fofanov  <fofanov@act-europe.fr>
3422         * 3vtrasym.adb:
3423         Demangle Ada symbols returned by TBK$SYMBOLIZE. Correctly align line
3424         numbers when symbol name is too long.
3426 2003-10-30  Ed Falis  <falis@gnat.com>
3428         * g-signal.ads, g-signal.adb: New files
3430         * impunit.adb: (Non_Imp_File_Names): Added "g-signal"
3432         * Makefile.rtl: Introduce GNAT.Signals
3434 2003-10-30  Robert Dewar  <dewar@gnat.com>
3436         * freeze.adb: Minor reformatting
3438         * lib-writ.adb (Write_ALI): Never write ali file if -gnats is specified
3440         * par.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb,
3441         par-ch5.adb, par-ch6.adb, par-ch9.adb, par-util.adb:
3442         New handling of Id_Check parameter to improve recognition of keywords
3443         used as identifiers.
3444         Update copyright notice to include 2003
3446 2003-10-29  Robert Dewar  <dewar@gnat.com>
3448         * 3vtrasym.adb, 5vtraent.ads, sprint.adb,
3449         sem_ch10.adb: Minor reformatting
3451         * exp_ch5.adb (Expand_Assign_Array): Test for bit unaligned operands
3452         (Expand_Assign_Record): Test right hand side for bit unaligned as well
3454 2003-10-29  Vasiliy Fofanov  <fofanov@act-europe.fr>
3456         * 3vtrasym.adb, 5vtraent.adb, 5vtraent.ads, tb-alvms.c:
3457         Support for TBK$SYMBOLIZE-based symbolic traceback.
3459 2003-10-29  Jose Ruiz  <ruiz@act-europe.fr>
3461         * exp_disp.adb:
3462         Revert previous change, that did not work well when pragma No_Run_Time
3463         was used in conjunction with a run-time other than ZFP.
3465 2003-10-29  Vincent Celier  <celier@gnat.com>
3467         * make.adb:
3468         (Gnatmake): When there are no Ada mains in attribute Main, disable the
3469          bind and link steps only is switch -z is not used.
3471 2003-10-29  Arnaud Charlet  <charlet@act-europe.fr>
3473         * Makefile.generic: Remove duplicated setting of CC.
3475         * Makefile.prolog: Set CC to gcc by default, to override make's
3476         default (cc).
3478         * einfo.h: Regenerated.
3480 2003-10-29  Ed Schonberg  <schonberg@gnat.com>
3482         * sem_ch10.adb (Analyze_Subunit): Restore state of suppress flags for
3483         current body, after compiling subunit.
3485         * itypes.adb (Create_Itype): In ASIS_Mode, do not freeze the itype
3486         when in deleted code, because gigi needs properly ordered freeze
3487         actions to annotate types.
3489         * freeze.adb (Is_Fully_Defined): Predicate must be recursive, to
3490         prevent the premature freezing of record type that contains
3491         subcomponents with a private type that does not yet have a completion.
3493 2003-10-29  Javier Miranda  <miranda@gnat.com>
3495         * sem_ch12.adb:
3496         (Analyze_Package_Instantiation): Check that instances can not be used in
3497         limited with_clauses.
3499         * sem_ch8.adb:
3500         (Analyze_Package_Renaming): Check that limited withed packages cannot
3501         be renamed. Improve text on error messages related to limited
3502         with_clauses.
3504         * einfo.adb, einfo.ads: Remove Non_Limited_Views attribute.
3506         * sprint.adb: (Sprint_Node_Actual): Print limited with_clauses.
3507         Update copyright notice.
3509         * sem_ch10.adb: (Build_Limited_Views): Complete its documentation.
3510         (Install_Limited_Context_Clauses): New subprogram that isolates all the
3511         checks required for limited context_clauses and installs the limited
3512         view.
3513         (Install_Limited_Withed_Unit): Complete its documentation.
3514         (Analyze_Context): Check that limited with_clauses are only allowed in
3515         package specs.
3516         (Install_Context): Call Install_Limited_Context_Clauses after the
3517         parents have been installed.
3518         (Install_Limited_Withed_Unit): Add documentation. Mark the installed
3519         package as 'From_With_Type'; this mark indicates that the limited view
3520         is installed. Used to check bad usages of limited with_clauses.
3521         (Build_Limited_Views): Do not add shadow entities to the scope's list
3522         of entities. Do not add real entities to the Non_Limited_Views chain.
3523         Improve error notification.
3524         (Remove_Context_Clauses): Remove context clauses in two phases:
3525         limited views first and regular views later (to maintain the
3526         stack model).
3527         (Remove_Limited_With_Clause): If the package is analyzed then reinstall
3528         its visible entities.
3530 2003-10-29  Thomas Quinot  <quinot@act-europe.fr>
3532         * sem_type.adb (Specific_Type): Type Universal_Fixed is compatible
3533         with any type that Is_Fixed_Point_Type.
3535         * sinfo.ads: Fix documentation for Associated_Node attribute.
3537 2003-10-29  Sergey Rybin  <rybin@act-europe.fr>
3539         * switch-c.adb (Scan_Front_End_Switches): ASIS_Mode is set now when
3540         both '-gnatc' and '-gnatt' are specified.
3542         * atree.adb (Initialize): Add initialization for Node_Count (set to
3543         zero).
3545 2003-10-29  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3547         * decl.c (gnat_to_gnu_entity, case E_Subprogram): If no return value,
3548         do not consider as Pure.
3550         Part of implementation of function-at-a-time:
3552         * trans.c (gnat_to_gnu_code): If IS_STMT, call expand_expr_stmt.
3553         (tree_transform): Add new argument to build_component_ref.
3554         (tree_transform, case N_Assignment_Statement): Make and return an
3555         EXPR_STMT.
3556         (tree_transform): If result IS_STMT, set flags and return it.
3557         (gnat_expand_stmt, set_lineno_from_sloc): New functions.
3559         * utils2.c (build_simple_component_ref, build_component_ref): Add new
3560         arg, NO_FOLD_P.
3561         (build_binary_op, case EQ_EXPR): Pass additional arg to it.
3562         (build_allocator): Likewise.
3564         * utils.c (convert_to_fat_pointer, convert_to_thin_pointer, convert):
3565         Add new arg to build_component_ref.
3566         (maybe_unconstrained_array, unchecked_convert): Likewise.
3568         * ada-tree.def (EXPR_STMT): New code.
3570         * ada-tree.h (IS_STMT, TREE_SLOC, EXPR_STMT_EXPR): New macros.
3572         * decl.c (gnat_to_gnu_entity, case object): Add extra arg to
3573         build_component_ref calls.
3575         * misc.c (gnat_expand_expr): If IS_STMT, call gnat_expand_stmt.
3577         * gigi.h (gnat_expand_stmt, set_lineno_from_sloc): New functions.
3578         (build_component_ref): Add new argument, NO_FOLD_P.
3580 2003-10-27  Arnaud Charlet  <charlet@act-europe.fr>
3582         * Makefile.generic: Add missing substitution on object_deps handling.
3584         PR ada/5909:
3585         * Make-lang.in (check-ada): Enable ACATS test suite.
3587 2003-10-27  Robert Dewar  <dewar@gnat.com>
3589         * exp_ch3.adb:
3590         (Freeze_Array_Type): We do not need an initialization routine for types
3591         derived from String or Wide_String. They should be treated the same
3592         as String and Wide_String themselves. This caused problems with the
3593         use of Initialize_Scalars.
3595         * exp_ch5.adb:
3596         (Expand_Assign_Record): Do component-wise assignment of non-byte aligned
3597         composites. This allows use of component clauses that are not byte
3598         aligned.
3600         * sem_prag.adb:
3601         (Analyze_Pragma, case Pack): Generate warning and ignore pack if there
3602         is an attempt to pack an array of atomic objects.
3604         * make.adb, prj-env.adb, prj-env.ads: Minor reformatting
3606 2003-10-27  Pascal Obry  <obry@gnat.com>
3608         * g-dirope.adb:
3609         (Basename): Check for drive letters in a pathname only on DOS based OS.
3611 2003-10-27  Vincent Celier  <celier@gnat.com>
3613         * make.adb:
3614         (Gnatmake): When unable to change dir to the object dir, display the
3615         content of the parent dir of the obj dir, to try to understand why this
3616         happens.
3618 2003-10-27  GNAT Script  <nobody@gnat.com>
3620         * Make-lang.in: Makefile automatically updated
3622 2003-10-27  Ed Schonberg  <schonberg@gnat.com>
3624         * sem_ch12.adb:
3625         (Inline_Instance_Body): Indicate that the save/restore of use_clauses
3626         should not be done in Save/Restore_Scope_Stack, because it is performed
3627         locally.
3629         * sem_ch8.adb:
3630         (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
3631         whether use clauses should be removed/restored.
3633         * sem_ch8.ads:
3634         (Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
3635         whether use clauses should be removed/restored.
3637 2003-10-26  Andreas Jaeger  <aj@suse.de>
3639         * Makefile.in: Remove duplicated lines.
3641 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
3643         * gnatvsn.ads (Gnat_Static_Version_String): New constant, used to
3644         minimize the differences with ACT tree.
3646         * gnatkr.adb, gnatlink.adb, gnatls.adb, gnatmake.adb,
3647         gnatprep.adb, gnatpsta.adb, gnatvsn.ads: Take advantage of
3648         Gnatvsn.Gnat_Static_Version_String to reduce differences between
3649         ACT and FSF trees.
3651 2003-10-24  Pascal Obry  <obry@gnat.com>
3653         * adadecode.c (ostrcpy): New function.
3654         (__gnat_decode): Use ostrcpy of strcpy.
3655         (has_prefix): Set first parameter a const.
3656         (has_suffix): Set first parameter a const.
3657         Update copyright notice. Fix source name in header.
3658         Removes a trailing space.
3659         PR ada/12014.
3661 2003-10-24  Jose Ruiz  <ruiz@act-europe.fr>
3663         * exp_disp.adb:
3664         Remove the test against being in No_Run_Time_Mode before generating a
3665         call to Register_Tag. It is redundant with the test against the
3666         availability of the function Register_Tag.
3668 2003-10-24  Vincent Celier  <celier@gnat.com>
3670         * g-catiio.adb: (Month_Name): Correct spelling of February
3672         * make.adb: (Mains): New package
3673         (Initialize): Call Mains.Delete
3674         (Gnatmake): Check that each main on the command line is a source of a
3675         project file and, if there are several mains, each of them is a source
3676         of the same project file.
3677         (Gnatmake): When a foreign language is specified in attribute Languages,
3678         no main is specified on the command line and attribute Mains is not
3679         empty, only build the Ada main. If there is no Ada main, just compile
3680         the Ada sources and their closure.
3681         (Gnatmake): If a main is specified on the command line with directory
3682         information, check that the source exists and, if it does, that the path
3683         is the actual path of a source of a project.
3685         * prj-env.adb:
3686         (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path. When
3687         Full_Path is True, return the full path instead of the simple file name.
3688         (Project_Of): New function
3690         * prj-env.ads:
3691         (File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path,
3692         defaulted to False.
3693         (Project_Of): New function
3695 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
3697         * Makefile.generic:
3698         Ensure objects of main project are always checked and rebuilt if needed.
3699         Set CC to gcc by default.
3700         Prepare new handling of link by creating a global archive (not activated
3701         yet).
3703         * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
3704         stringt.h: Update copyright notice. Remove trailing blanks.
3705         Fix source name in header.
3707 2003-10-24  Robert Dewar  <dewar@gnat.com>
3709         * sem_ch12.adb: Minor reformatting
3711         * sem_ch3.adb:
3712         Minor reformatting (including new function return style throughout)
3714         * sem_ch3.ads:
3715         Minor reformatting (including new function return style throughout)
3717 2003-10-24  Arnaud Charlet  <charlet@act-europe.fr>
3719         * adadecode.h, atree.h, elists.h, nlists.h, raise.h,
3720         stringt.h: Update copyright notice. Remove trailing blanks.
3721         Fix source name in header.
3723 2003-10-24  GNAT Script  <nobody@gnat.com>
3725         * Make-lang.in: Makefile automatically updated
3727 2003-10-23  Nathanael Nerode  <neroden@gcc.gnu.org>
3729         * adadecode.h, atree.h, elists.h, namet.h, nlists.h, raise.h,
3730         stringt.h: Convert to ISO C90 declarations and definitions.
3732 2003-10-23  Thomas Quinot  <quinot@act-europe.fr>
3734         PR ada/11978:
3735         * exp_ch13.adb (Expand_N_Freeze_Entity): Do not consider inherited
3736         External_Tag attribute definition clauses.
3738 2003-10-23  Ed Schonberg  <schonberg@gnat.com>
3740         PR ada/7613:
3741         * exp_dbug.adb (Debug_Renaming_Declaration): For the renaming of a
3742         child unit, generate a fully qualified name to avoid spurious errors
3743         when the context contains renamings of different child units with
3744         the same simple name.
3746         * exp_dbug.ads: Add documentation on name qualification for renamings
3747         of child units.
3749 2003-10-23  Robert Dewar  <dewar@gnat.com>
3751         * g-regpat.ads, g-regpat.adb: Minor reformatting
3753 2003-10-23  Jose Ruiz  <ruiz@act-europe.fr>
3755         * Makefile.in: Use the file 1atags.ads with the ZFP and cert run-times.
3757 2003-10-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
3759         * trans.c: (tree_transform, case N_Real_Literal): Add extra arg to
3760         Machine call.
3762         * urealp.h: (Machine): Update to proper definition.
3764 2003-10-23  Arnaud Charlet  <charlet@act-europe.fr>
3766         * init.c, adaint.c: Minor reformatting.
3768 2003-10-23  Danny Smith  <dannysmith@users.sourceforge.net>
3770         * adaint.c (w32_epoch_offset): Define static const at file level.
3771         (win32_filetime): Replace offset with w32_epoch_offset. Use NULL
3772         rather than t_create, t_access in call to GetFileTime. Use union
3773         to convert between FILETIME and  unsigned long long.
3774         (__gnat_file_time_name): Test for invalid file handle.
3775         (__gnat_set_filetime_name): Support win32 targets using
3776         w32api SetFileTime.
3778 2003-10-22  Danny Smith  <dannysmith@users.sourceforge.net>
3780         * sysdep.c: Include conio.h if __MINGW32__ and !OLD_MINGW.
3782         * ctrl_c.c (__gnat_int_handler): Remove declaration.
3784         * decl.c (creat_concat_name):  Const-ify prefix.
3786         * adaint.c: Include ctype.h if __MINGW32__.
3787         (__gnat_readlink): Mark arguments as possibly unused.
3788         (__gnat_symlink): Likewise.
3789         (__gnat_is_symbolic_link): Likewise.
3790         (__gnat_portable_spawn): Likewise.  Cast last arg of spawnvp to match
3791         declaration
3792         (__gnat_file_time_name): Don't declare struct stat statbuf when
3793         not needed.
3794         (__gnat_is_absolute_path): Add parenthesis around condition of
3795         'if' statement to avoid warning.
3796         (__gnat_plist_init): Specify void as parameter.
3797         (plist_enter): Likewise.
3798         (plist_leave): Likewise.
3799         (remove_handle): Make static. Initialize prev.
3801 2003-10-22  Arnaud Charlet  <charlet@act-europe.fr>
3803         * Makefile.in: Disable build of gnatpsta. PR ada/10110.
3804         * cstreams.c (__gnat_full_name): Minor improvements and clean up
3805         of previous change.
3807 2003-10-22  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
3809         * tracebak.c (MAX): Avoid redefinition warning.
3811         * init.c [sgi] (__gnat_error_handler): Remove i, unused.
3812         Change msg to const char *.
3813         (__gnat_install_handler): Remove ss, unused.
3814         [sun && __SVR4 && !__vxworks] (__gnat_error_handler): Change msg
3815         to const char *.
3816         * cstreams.c (__gnat_full_name): Declare p only when used.
3817         (__gnat_full_name) [sgi] Return buffer.
3819 2003-10-22  Arnaud Charlet  <charlet@act-europe.fr>
3821         * mingw32.h: New file.
3822         * gnat_wrapper.adb: New file.
3824 2003-10-22  Jerome Roussel  <roussel@act-europe.fr>
3826         * g-regpat.ads, g-regpat.adb (Match): new function, to know if a
3827         string match a pre compiled regular expression (the corresponding
3828         version of the function working on a raw regular expression)
3829         Fix typos in various comments
3830         Update copyright notice in spec
3832 2003-10-21  Gary Dismukes  <dismukes@gnat.com>
3834         * exp_ch3.adb:
3835         (Component_Needs_Simple_Initialization): Return False when the type is a
3836         packed bit array. Revise spec comments to document this case.
3838         * exp_prag.adb:
3839         (Expand_Pragma_Import): Set any expression on the imported object to
3840         empty to avoid initializing imported objects (in particular this
3841         covers the case of zero-initialization of bit arrays).
3842         Update copyright notice.
3844 2003-10-21  Ed Schonberg  <schonberg@gnat.com>
3846         * sem_ch12.adb:
3847         (Load_Parent_Of_Generic): If parent is compilation unit, stop search,
3848         a subunit is missing.
3849         (Instantiate_Subprogram_Body): If body of function is missing, set type
3850         of return expression explicitly in dummy body, to prevent cascaded
3851         errors when a subunit is missing.
3852         Fixes PR 5677.
3854         * sem_ch3.adb:
3855         (Access_Subprogram_Declaration): Verify that return type is valid.
3856         Fixes PR 8693.
3858         * sem_elab.adb:
3859         (Check_Elab_Calls): Do not apply elaboration checks if the main unit is
3860         generic.
3861         Fixes PR 12318.
3863         * sem_util.adb:
3864         (Corresponding_Discriminant): If the scope of the discriminant is a
3865         private type without discriminant, use its full view.
3866         Fixes PR 8247.
3868 2003-10-21  Arnaud Charlet  <charlet@act-europe.fr>
3870         * 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads,
3871         3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads,
3872         3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads,
3873         55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb,
3874         56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads,
3875         59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads,
3876         5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb,
3877         5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads,
3878         5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads,
3879         5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb,
3880         5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads,
3881         5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb,
3882         5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb,
3883         5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb,
3884         7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb,
3885         a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb,
3886         a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb,
3887         a-stwisu.ads, bld.adb, bld.ads, bld-io.adb,
3888         bld-io.ads, clean.adb, clean.ads, ctrl_c.c,
3889         erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
3890         err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads,
3891         g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb,
3892         g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads,
3893         g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb,
3894         g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb,
3895         g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb,
3896         g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads,
3897         gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb,
3898         g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads,
3899         g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb,
3900         i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl,
3901         prep.adb, prep.ads, prepcomp.adb, prepcomp.ads,
3902         prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb,
3903         s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb,
3904         s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb,
3905         s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb,
3906         s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb,
3907         s-caun64.ads, scng.adb, scng.ads, s-exnint.adb,
3908         s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb,
3909         s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb,
3910         s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads,
3911         socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb,
3912         s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads,
3913         s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads,
3914         s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb,
3915         styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb,
3916         s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads,
3917         tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads,
3918         vms_conv.ads, vms_conv.adb, vms_data.ads,
3919         vxaddr2line.adb: Files added. Merge with ACT tree.
3921         * 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads,
3922         5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb,
3923         5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads,
3924         5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c,
3925         g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb,
3926         s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads,
3927         s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
3928         s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads,
3929         s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads,
3930         s-expssi.ads, style.adb: Files removed. Merge with ACT tree.
3932         * 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
3933         3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
3934         3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
3935         3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
3936         4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads,
3937         4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads,
3938         4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb,
3939         4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads,
3940         51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads,
3941         53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads,
3942         5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
3943         5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads,
3944         5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb,
3945         5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
3946         5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads,
3947         5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads,
3948         5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads,
3949         5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
3950         5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads,
3951         5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads,
3952         5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads,
3953         5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
3954         5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
3955         5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
3956         5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb,
3957         5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads,
3958         5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb,
3959         5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
3960         5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb,
3961         5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
3962         5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
3963         5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads,
3964         5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
3965         5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb,
3966         6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb,
3967         7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb,
3968         7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb,
3969         a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads,
3970         a-comlin.adb, adaint.c, adaint.h, ada-tree.def,
3971         a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb,
3972         a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads,
3973         a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads,
3974         ali.adb, ali.ads, ali-util.adb, ali-util.ads,
3975         a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb,
3976         a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb,
3977         a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb,
3978         a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb,
3979         a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads,
3980         a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb,
3981         a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb,
3982         a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb,
3983         a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb,
3984         a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb,
3985         a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads,
3986         a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads,
3987         atree.adb, atree.ads, a-witeio.adb, a-witeio.ads,
3988         a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb,
3989         a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb,
3990         bcheck.adb, binde.adb, bindgen.adb, bindusg.adb,
3991         checks.adb, checks.ads, cio.c, comperr.adb,
3992         comperr.ads, csets.adb, cstand.adb, cstreams.c,
3993         debug_a.adb, debug_a.ads, debug.adb, decl.c,
3994         einfo.adb, einfo.ads, errout.adb, errout.ads,
3995         eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb,
3996         expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb,
3997         exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb,
3998         exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
3999         exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb,
4000         exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c,
4001         exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
4002         exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb,
4003         exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb,
4004         fe.h, fmap.adb, fmap.ads, fname.adb,
4005         fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb,
4006         freeze.ads, frontend.adb, g-awk.adb, g-awk.ads,
4007         g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads,
4008         g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
4009         g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
4010         g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
4011         g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads,
4012         g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads,
4013         g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads,
4014         g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb,
4015         g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb,
4016         g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h,
4017         g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads,
4018         g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads,
4019         gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb,
4020         gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb,
4021         gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb,
4022         gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb,
4023         gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb,
4024         g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb,
4025         g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads,
4026         g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads,
4027         g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads,
4028         g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads,
4029         g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb,
4030         g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb,
4031         g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads,
4032         i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads,
4033         i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c,
4034         inline.adb, interfac.ads, i-pacdec.ads, itypes.adb,
4035         itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h,
4036         layout.adb, lib.adb, lib.ads, lib-list.adb,
4037         lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb,
4038         lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
4039         link.c, live.adb, make.adb, make.ads,
4040         Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb,
4041         mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb,
4042         mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb,
4043         misc.c, mkdir.c, mlib.adb, mlib.ads,
4044         mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads,
4045         mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads,
4046         namet.adb, namet.ads, namet.h, nlists.ads,
4047         nlists.h, nmake.adt, opt.adb, opt.ads,
4048         osint.adb, osint.ads, osint-b.adb, osint-c.adb,
4049         par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb,
4050         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
4051         par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb,
4052         par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb,
4053         prj.adb, prj.ads, prj-attr.adb, prj-attr.ads,
4054         prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads,
4055         prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads,
4056         prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads,
4057         prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads,
4058         prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads,
4059         prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads,
4060         prj-util.adb, prj-util.ads, raise.c, raise.h,
4061         repinfo.adb, repinfo.h, restrict.adb, restrict.ads,
4062         rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads,
4063         s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb,
4064         s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb,
4065         scans.ads, scn.adb, scn.ads, s-crc32.adb,
4066         s-crc32.ads, s-direio.adb, sem.adb, sem.ads,
4067         sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
4068         sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb,
4069         sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb,
4070         sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
4071         sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
4072         sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
4073         sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb,
4074         sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb,
4075         sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads,
4076         sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads,
4077         sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb,
4078         s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads,
4079         s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads,
4080         s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
4081         s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb,
4082         s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb,
4083         s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads,
4084         s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb,
4085         sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb,
4086         sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads,
4087         sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads,
4088         s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads,
4089         s-memory.adb, s-memory.ads, snames.adb, snames.ads,
4090         snames.h, s-osprim.ads, s-parame.ads, s-parint.ads,
4091         s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb,
4092         s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads,
4093         s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads,
4094         s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads,
4095         s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads,
4096         s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads,
4097         s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads,
4098         s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads,
4099         s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb,
4100         s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb,
4101         s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb,
4102         s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads,
4103         s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
4104         s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
4105         s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads,
4106         s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
4107         stringt.adb, stringt.ads, stringt.h, style.ads,
4108         stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads,
4109         s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb,
4110         s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb,
4111         switch.ads, switch-b.adb, switch-c.adb, switch-m.adb,
4112         s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads,
4113         table.adb, table.ads, targparm.adb, targparm.ads,
4114         targtyps.c, tbuild.adb, tbuild.ads, tracebak.c,
4115         trans.c, tree_io.adb, treepr.adb, treeprs.adt,
4116         ttypes.ads, types.ads, types.h, uintp.adb,
4117         uintp.ads, uintp.h, uname.adb, urealp.adb,
4118         urealp.ads, urealp.h, usage.adb, utils2.c,
4119         utils.c, validsw.adb, validsw.ads, widechar.adb,
4120         xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads,
4121         xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb,
4122         einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb,
4123         gnatvsn.ads: Merge with ACT tree.
4125         * gnatvsn.adb: Rewritten in a simpler and more efficient way.
4127 2003-10-20  Mark Mitchell  <mark@codesourcery.com>
4129         * Make-lang.in (gnat_ug_unx.info): Add dependency on stmp-docobjdir.
4130         (gnat_ug_vmx.info): Likewise.
4131         (gnat_ug_vxw.info): Likewise.
4132         (gnat_ug_wnt.info): Likewise.
4133         (gnat_rm.info): Likewise.
4134         (gnat-style.info): Likewise.
4136         * Make-lang.in (ada.install-info): Remove target.
4137         (info): New target.
4138         (install-info): Likewise.
4139         (gnat_ug_unx.info): Simplify rule.
4140         (gnat_ug_vmx.info): Likewise.
4141         (gnat_ug_vxw.info): Likewise.
4142         (gnat_ug_wnt.info): Likewise.
4143         (gnat_rm.info): Likewise.
4144         (gnat-style.info): Likewise.
4146 2003-10-14  Nathanael Nerode  <neroden@gcc.gnu.org>
4148         * Make-lang.in: Replace uses of $(target_alias) with
4149         $(target_noncanonical).
4150         * ada/Makefile.in: Remove unused mention of $(target_alias).
4152 2003-10-06  Mark Mitchell  <mark@codesourcery.com>
4154         * Make-lang.in (ada.info): Replace with ...
4155         (info): ... this.
4156         (ada.dvi): Replace with ...
4157         (dvi): ... this.
4159 2003-09-29  Zack Weinberg  <zack@codesourcery.com>
4161         * trans.c (gigi): Use REAL_ARITHMETIC, not REAL_VALUE_ATOF, to
4162         initialize dconstp5 and dconstmp5.
4164 2003-09-28  Richard Henderson  <rth@redhat.com>
4166         * trans.c (tree_transform): Update call to expand_asm_operands.
4168 2003-09-21  Richard Henderson  <rth@redhat.com>
4170         * trans.c, utils.c: Revert.
4172 2003-09-21  Richard Henderson  <rth@redhat.com>
4174         * trans.c, utils.c: Update for DECL_SOURCE_LOCATION rename and
4175         change to const.
4177 2003-09-04  Michael Matz  <matz@suse.de>
4179         * misc.c: Include "target.h".
4180         * Make-lang.in (misc.o): Add dependency on target.h.
4182 2003-09-03  DJ Delorie  <dj@redhat.com>
4184         * misc.c (default_pass_by_ref): Convert to calls.return_in_memory
4185         hook.
4187 2003-08-30  Zack Weinberg  <zack@codesourcery.com>
4189         * Makefile.in: Update substitutions to match changes to
4190         configure.  Use include directives instead of @-insertions
4191         to read in host and target fragments.  Add a rule to
4192         regenerate ada/Makefile.
4194 2003-07-18  Neil Booth  <neil@daikokuya.co.uk>
4196         * lang-options.h: Remove.
4197         * lang.opt: Add help text.
4199 2003-07-07  Nathan Sidwell  <nathan@codesourcery.com>
4201         * trans.c (build_unit_elab, set_lineno): Adjust emit_line_note
4202         calls.
4204 2003-07-06  Neil Booth  <neil@daikokuya.co.uk>
4206         * misc.c (gnat_handle_option): Don't handle filenames.
4208 2003-07-04  H.J. Lu <hongjiu.lu@intel.com>
4210         * Make-lang.in: Replace PWD with PWD_COMMAND.
4211         * Makefile.adalib: Likewise.
4212         * Makefile.in: Likewise.
4214 2003-07-04  Matt Kraai  <kraai@alumni.cmu.edu>
4216         * misc.c (gnat_argv): Revert last change.
4217         (gnat_handle_option, gnat_init_options): Copy arguments.
4219 2003-07-03  Neil Booth  <neil@daikokuya.co.uk>
4221         * misc.c (gnat_argv): Make const.
4223 2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
4225         * misc.c (save_argc, save_argv): Keep non-static!
4227 2003-07-02  Neil Booth  <neil@daikokuya.co.uk>
4229         * misc.c (save_argc, save_argv): Make static.
4230         (gnat_init_options): New prototype.
4231         (gnat_init_options): Update.
4233 2003-07-01  Matt Kraai  <kraai@alumni.cmu.edu>
4235         * gnat_ug.texi: Remove unlikely characters from @vars.
4236         * gnat_ug_vms.texi: Regenerate.
4238 2003-06-27  Nathan Sidwell  <nathan@codesourcery.com>
4240         * misc.c (record_code_position): Adjust emit_note call.
4242 2003-06-26  Neil Booth  <neil@daikokuya.co.uk>
4244         * misc.c (gnat_handle_option): Don't check for missing arguments.
4246 2003-06-20  Nathan Sidwell  <nathan@codesourcery.com>
4248         * utils.c (end_subprog_body): Adjust expand_function_end call.
4250 2003-06-16  Matt Kraai  <kraai@alumni.cmu.edu>
4252         * bindgen.adb (Gen_Main_Ada, Gen_Main_C): Do not test
4253         Bind_Main_Program.
4255 2003-06-15  Neil Booth  <neil@daikokuya.co.uk>
4257         * lang.opt: Declare Ada.
4258         * misc.c (gnat_init_options): Update.
4260 2003-06-14  Nathan Sidwell  <nathan@codesourcery.com>
4262         * utils.c (begin_subprog_body): Adjust init_function_start call.
4264 2003-06-14  Neil Booth  <neil@daikokuya.co.uk>
4266         * Make-lang.in: Update to use options.c and options.h.
4267         * misc.c: Include options.h not aoptions.h.
4268         (gnat_handle_option): Abort on unrecognized switch.
4269         (gnat_init_options): Request Ada switches.
4271 2003-06-14  Neil Booth  <neil@daikokuya.co.uk>
4273         * lang.opt: Add -Wall.
4274         * misc.c (gnat_handle_option): Handle it.
4276 2003-06-12  Neil Booth  <neil@daikokuya.co.uk>
4278         * misc.c (gnat_handle_option): Fix warnings.
4280 2003-06-11  Matt Kraai  <kraai@alumni.cmu.edu>
4282         * Make-lang.in (gnatbind): Remove $(LIBIBERTY).
4284 2003-06-11  Neil Booth  <neil@daikokuya.co.uk>
4286         * Make-lang.in: Update to handle command-line options.
4287         * lang.opt: New file.
4288         * misc.c: Include aoptions.h.
4289         (cl_options_count, cl_options): Remove.
4290         (gnat_handle_option): New.
4291         (gnat_decode_option): Remove.
4292         (LANG_HOOKS_DECODE_OPTION): Remove.
4293         (LANG_HOOKS_HANDLE_OPTION): Override.
4295 2003-06-10  Nathanael Nerode  <neroden@gcc.gnu.org>
4297         * init.c, misc.c, trans.c, utils.c: Remove dead code.
4299 2003-06-09  Nathanael Nerode  <neroden@gcc.gnu.org>
4301         * Makefile.in: Replace "host_canonical" with "host" for autoconf
4302         substitution.
4304 2003-06-08  Neil Booth  <neil@daikokuya.co.uk>
4306         * Make-lang.in: Update.
4307         * misc.c: Include opts.h. Define cl_options_count and cl_options.
4309 2003-06-07  Neil Booth  <neil@daikokuya.co.uk>
4311         * misc.c (gnat_init_options): Update.
4313 2003-06-05  Matt Kraai  <kraai@alumni.cmu.edu>
4315         * Make-lang.in (ada/b_gnatb.o-warn): Remove.
4316         * bindgen.adb (Gen_Main_C): Mark ensure_reference with
4317         __attribute__ ((__unused__)).
4319 2003-06-05  Jan Hubicka  <jh@suse.cz>
4321         * Make-lang.in:  Add support for stageprofile and stagefeedback
4323 2003-06-05  Matt Kraai  <kraai@alumni.cmu.edu>
4325         * bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C)
4326         (Gen_Main_C, Gen_Output_File_C): Generate ISO C.
4328 2003-06-04  Matt Kraai  <kraai@alumni.cmu.edu>
4330         * gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr):
4331         Remove non-VMS directive.
4332         (Switches for gnatlbr, Optimization Levels): Remove non-VMS
4333         alternatives.
4334         (Examples of gnatls Usage): Remove VMS alternative.
4336 2003-06-04  Olivier Hainque  <hainque@act-europe.fr>
4338         PR ada/9953:
4339         * 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
4340         and turn ZCX_By_Default back to False since the underlying support
4341         is not quite there yet.
4343 2003-06-01  Andreas Jaeger  <aj@suse.de>
4345         * utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE
4346         and ROUND_TYPE_SIZE_UNIT.
4348 2003-05-22   Geert Bosch <bosch@gnat.com>
4350         * gnat_rm.texi : Remove reference to Ada Core Technologies.
4352 2003-05-03  Nathan Sidwell  <nathan@codesourcery.com>
4354         * trans.c (tree_transform): Use location_t and input_location
4355         directly.
4356         (build_unit_elab): Likewise.
4357         * utils.c (create_label_decl): Likewise.
4359 2003-05-01  Nathan Sidwell  <nathan@codesourcery.com>
4361         * trans.c (tree_transform, build_unit_elab,
4362         set_lineno): Rename lineno to input_line.
4363         * utils.c (pushdecl, create_label_decl, begin_subprog_body,
4364         end_subprog_body): Likewise.
4365         * utils2.c (build_call_raise): Likewise.
4367 2003-05-01  Laurent Guerby <guerby@acm.org>
4369         PR ada/10546
4370         * 5iosinte.ads: Increase pthread_cond_t size to match recent
4371         LinuxThread and NPTL version, merge from ACT.
4373 2003-04-28  Zack Weinberg  <zack@codesourcery.com>
4375         * utils.c (convert): No need to clear TREE_CST_RTL.
4377 2003-04-23   Geert Bosch <bosch@gnat.com>
4379         * 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
4380         1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
4381         3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
4382         3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
4383         3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
4384         4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb,
4385         4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads,
4386         4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads,
4387         4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb,
4388         4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb,
4389         4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb,
4390         4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb,
4391         52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads,
4392         5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads,
4393         5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb,
4394         5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads,
4395         5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb,
4396         5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb,
4397         5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb,
4398         5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
4399         5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
4400         5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads,
4401         5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
4402         5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads,
4403         5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads,
4404         5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb,
4405         5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads,
4406         5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads,
4407         5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb,
4408         5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads,
4409         5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb,
4410         5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb,
4411         5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb,
4412         5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads,
4413         5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads,
4414         5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb,
4415         5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb,
4416         5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads,
4417         5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads,
4418         5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb,
4419         5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb,
4420         5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads,
4421         5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads,
4422         5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb,
4423         6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb,
4424         7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads,
4425         7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads,
4426         9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb,
4427         a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb,
4428         a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads,
4429         a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads,
4430         a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads,
4431         a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads,
4432         a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads,
4433         a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads,
4434         a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb,
4435         a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads,
4436         a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads,
4437         a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads,
4438         a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads,
4439         a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads,
4440         a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads,
4441         a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads,
4442         a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads,
4443         a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads,
4444         a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads,
4445         a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads,
4446         a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb,
4447         a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads,
4448         a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads,
4449         a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads,
4450         a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads,
4451         a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb,
4452         a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads,
4453         a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads,
4454         a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads,
4455         a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
4456         a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads,
4457         a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads,
4458         a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb,
4459         a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb,
4460         a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb,
4461         a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb,
4462         a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb,
4463         a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb,
4464         a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb,
4465         a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb,
4466         a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb,
4467         a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb,
4468         a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb,
4469         a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads,
4470         a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb,
4471         a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb,
4472         a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb,
4473         a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb,
4474         a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb,
4475         a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb,
4476         a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb,
4477         a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb,
4478         a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb,
4479         a-wttest.ads, ada-tree.h, ada.ads, ada.h,
4480         adadecode.c, adadecode.h, ali-util.adb, ali-util.ads,
4481         ali.adb, ali.ads, alloc.ads, argv.c,
4482         atree.adb, atree.ads, atree.h, aux-io.c,
4483         back_end.adb, back_end.ads, bcheck.adb, bcheck.ads,
4484         binde.adb, binde.ads, binderr.adb, binderr.ads,
4485         bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads,
4486         butil.adb, butil.ads, cal.c, calendar.ads,
4487         casing.adb, casing.ads, ceinfo.adb, checks.adb,
4488         checks.ads, cio.c, comperr.adb, comperr.ads,
4489         config-lang.in, csets.adb, csets.ads, csinfo.adb,
4490         cstand.adb, cstand.ads, cuintp.c, debug.adb,
4491         debug.ads, debug_a.adb, debug_a.ads, dec-io.adb,
4492         dec-io.ads, dec.ads, deftarg.c, directio.ads,
4493         einfo.adb, einfo.ads, elists.adb, elists.ads,
4494         elists.h, errno.c, errout.adb, errout.ads,
4495         eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb,
4496         exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads,
4497         exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads,
4498         exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads,
4499         exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads,
4500         exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads,
4501         exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads,
4502         exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads,
4503         exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads,
4504         exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads,
4505         exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads,
4506         exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads,
4507         exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads,
4508         exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads,
4509         exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads,
4510         fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads,
4511         fname-uf.adb, fname-uf.ads, fname.adb, fname.ads,
4512         freeze.adb, freeze.ads, frontend.adb, frontend.ads,
4513         g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads,
4514         g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads,
4515         g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
4516         g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
4517         g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
4518         g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb,
4519         g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb,
4520         g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb,
4521         g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb,
4522         g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads,
4523         g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads,
4524         g-htable.adb, g-htable.ads, g-io.adb, g-io.ads,
4525         g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb,
4526         g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb,
4527         g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads,
4528         g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb,
4529         g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads,
4530         g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb,
4531         g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads,
4532         g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads,
4533         g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads,
4534         g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads,
4535         get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads,
4536         gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads,
4537         gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads,
4538         gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads,
4539         gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb,
4540         gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb,
4541         gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads,
4542         gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb,
4543         hlo.adb, hlo.ads, hostparm.ads, i-c.adb,
4544         i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads,
4545         i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads,
4546         i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads,
4547         i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb,
4548         i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb,
4549         i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads,
4550         inline.adb, inline.ads, interfac.ads, ioexcept.ads,
4551         itypes.adb, itypes.ads, krunch.adb, krunch.ads,
4552         layout.adb, layout.ads, lib-list.adb, lib-load.adb,
4553         lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads,
4554         lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
4555         lib.adb, lib.ads, live.adb, live.ads,
4556         machcode.ads, make.adb, make.ads, makeusg.adb,
4557         makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads,
4558         mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads,
4559         memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb,
4560         mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb,
4561         mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb,
4562         mlib.ads, namet.adb, namet.ads, nlists.adb,
4563         nlists.ads, opt.adb, opt.ads, osint-b.adb,
4564         osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb,
4565         osint-l.ads, osint-m.adb, osint-m.ads, osint.adb,
4566         osint.ads, output.adb, output.ads, par-ch10.adb,
4567         par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb,
4568         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
4569         par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb,
4570         par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb,
4571         par-tchk.adb, par-util.adb, par.adb, par.ads,
4572         prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads,
4573         prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads,
4574         prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads,
4575         prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads,
4576         prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads,
4577         prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads,
4578         prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads,
4579         prj.adb, prj.ads, repinfo.adb, repinfo.ads,
4580         restrict.adb, restrict.ads, rident.ads, rtsfind.adb,
4581         rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb,
4582         s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb,
4583         s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb,
4584         s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads,
4585         s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads,
4586         s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb,
4587         s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads,
4588         s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads,
4589         s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
4590         s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads,
4591         s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads,
4592         s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads,
4593         s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb,
4594         s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
4595         s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads,
4596         s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads,
4597         s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads,
4598         s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads,
4599         s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads,
4600         s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads,
4601         s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads,
4602         s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads,
4603         s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads,
4604         s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads,
4605         s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads,
4606         s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads,
4607         s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb,
4608         s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb,
4609         s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads,
4610         s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads,
4611         s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads,
4612         s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads,
4613         s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads,
4614         s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads,
4615         s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads,
4616         s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads,
4617         s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads,
4618         s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads,
4619         s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads,
4620         s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads,
4621         s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads,
4622         s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads,
4623         s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads,
4624         s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads,
4625         s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads,
4626         s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads,
4627         s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads,
4628         s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads,
4629         s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads,
4630         s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads,
4631         s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads,
4632         s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads,
4633         s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads,
4634         s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads,
4635         s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads,
4636         s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads,
4637         s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads,
4638         s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads,
4639         s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads,
4640         s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb,
4641         s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads,
4642         s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads,
4643         s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads,
4644         s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
4645         s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads,
4646         s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads,
4647         s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb,
4648         s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb,
4649         s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb,
4650         s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads,
4651         s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
4652         s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads,
4653         s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads,
4654         s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb,
4655         s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
4656         s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb,
4657         s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb,
4658         s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb,
4659         s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads,
4660         s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads,
4661         s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads,
4662         s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads,
4663         s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads,
4664         s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads,
4665         s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads,
4666         s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads,
4667         s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads,
4668         s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb,
4669         s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb,
4670         s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb,
4671         s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb,
4672         s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb,
4673         s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb,
4674         s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb,
4675         scn-slit.adb, scn.adb, scn.ads, sdefault.ads,
4676         sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads,
4677         sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
4678         sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads,
4679         sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads,
4680         sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads,
4681         sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads,
4682         sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
4683         sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
4684         sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads,
4685         sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads,
4686         sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads,
4687         sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads,
4688         sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads,
4689         sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads,
4690         sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads,
4691         sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads,
4692         sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb,
4693         sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb,
4694         sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb,
4695         sinput-p.ads, sinput.adb, sinput.ads, snames.adb,
4696         snames.ads, sprint.adb, sprint.ads, stand.adb,
4697         stand.ads, stringt.adb, stringt.ads, style.adb,
4698         style.ads, stylesw.adb, stylesw.ads, switch-b.adb,
4699         switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb,
4700         switch-m.ads, switch.adb, switch.ads, system.ads,
4701         table.adb, table.ads, targparm.adb, targparm.ads,
4702         tbuild.adb, tbuild.ads, text_io.ads, trans.c,
4703         tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads,
4704         tree_io.adb, tree_io.ads, treepr.adb, treepr.ads,
4705         ttypef.ads, ttypes.ads, types.adb, types.ads,
4706         uintp.adb, uintp.ads, uname.adb, uname.ads,
4707         unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads,
4708         usage.adb, usage.ads, validsw.adb, validsw.ads,
4709         widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb,
4710         xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads,
4711         xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header,
4712         formatting and other trivial changes from ACT.
4714 2003-04-12  Zack Weinberg  <zack@codesourcery.com>
4716         * gigi.h, utils2.c (build_constructor):
4717         Rename gnat_build_constructor. Use build_constructor.
4718         * decl.c (gnat_to_gnu_entity)
4719         * trans.c (tree_transform, pos_to_constructor, extract_values)
4720         * ada/utils.c (build_template, convert_to_fat_pointer, convert)
4721         (unchecked_convert)
4722         * ada/utils2.c (build_binary_op, build_call_raise, build_allocator)
4723         (fill_vms_descriptor):
4724         Update to match.
4726 2003-04-06  Zack Weinberg  <zack@codesourcery.com>
4728         * ada-tree.def: Make fourth element for GNAT_LOOP_ID zero.
4729         * misc.c (gnat_tree_size): New function.
4730         (LANG_HOOKS_TREE_SIZE): Override.
4732 2003-04-03  Jason Merrill  <jason@redhat.com>
4734         * misc.c (gnat_adjust_rli): #if 0.
4736 2003-03-31   Geert Bosch <bosch@gnat.com>
4738         PR ada/10020
4739         * link.c : Fix misspelled "const" keyword
4741 2003-03-23  Mark Mitchell  <mark@codesourcery.com>
4743         PR c++/7086
4744         * utils2.c: Adjust calls to put_var_into_stack.
4746 2003-03-12  Nathanael Nerode  <neroden@gcc.gnu.org>
4748         * Make-lang.in, Makefile.in, config-lang.in: GCC, not GNU CC.
4750 2003-03-08  Neil Booth  <neil@daikokuya.co.uk>
4752         * misc.c (gnat_init): Update for new prototype.
4754 2003-03-05  Olivier Hainque  <hainque@gnat.com>
4756         ada/9961
4757         * raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid
4758         warning, and fix return type for the IN_RTS && !SJLJ case.
4760 2003-03-04  Tom Tromey  <tromey@redhat.com>
4762         * Make-lang.in (ada.tags): New target.
4764 2003-03-04  Olivier Hainque  <hainque@act-europe.fr>
4766         ada/9911
4767         * a-except.adb (Unwind_RaiseException): Import a GNAT specific
4768         wrapper, which name remains constant whatever underlying GCC
4769         scheme.
4771         * raise.c (__gnat_Unwind_RaiseException): New wrappers, providing
4772         the stable interface needed for a-except.
4774 2003-03-02  Andreas Jaeger  <aj@suse.de>
4776         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
4777         gnat_ug_wnt.texi: Regenerate.
4779 2003-03-02  Laurent Guerby <guerby@acm.org>
4781         * Makefile.in (install-gnatlib): Match previous change there
4782         so it works.
4784 2003-02-28  Andreas Schwab  <schwab@suse.de>
4786         * Make-lang.in (install-gnatlib): Change to ada directory before
4787         running make instead of using ada/Makefile directly.
4789 2003-02-18  Ben Elliston  <bje@redhat.com>
4791         Part of fix for PR ada/9406
4792         * gnat_ug.texi (Binder output file): Grammar fix.
4794 2003-02-18  Ben Elliston  <bje@redhat.com>
4796         PR other/7350
4797         * 5qtaprop.adb (Sleep): Fix typo in comment.
4799 2003-02-04  Joseph S. Myers  <jsm@polyomino.org.uk>
4801         * gnat_rm.texi, gnat_ug.texi: Update to GFDL 1.2.
4802         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
4803         gnat_ug_wnt.texi: Regenerate.
4805 2003-02-03  Christian Cornelssen <ccorn@cs.tu-berlin.de>
4807         * Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
4808         be created if necessary.
4809         (ada.install-common): Let $(DESTDIR)$(bindir) be created
4810         if necessary.  Remove erroneous and redundant gnatchop
4811         installation commands.  Test for gnatdll before attempting
4812         to install it.
4813         (ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr,
4814         and gnatdll from all plausible locations.
4816 2003-02-01  Richard Sandiford  <rsandifo@redhat.com>
4818         * utils2.c (build_unary_op): Don't check flag_volatile.
4819         * gnat_ug.texi: Remove -fvolatile from example.
4820         * gnat_ug_vxw.texi: Likewise.
4822 2003-01-29  Laurent Guerby <guerby@acm.org>
4824         PR ada/8344
4825         * final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
4826         * Makefile.in: match previous change.
4827         * Make-lang.in: match previous change.
4829 2003-01-29      Joel Sherrill <joel@OARcorp.com>
4831         * 5rosinte.ads: Add SIGXCPU.
4832         * 5rtpopsp.adb: New file.
4833         * Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
4834         * Makefile.in: Recognize more RTEMS targets and add the RTEMS
4835         specific file 5rtpopsp.adb.
4836         * adaint.h: Add include of <stdio.h> when target is RTEMS.  This
4837         is likely needed for all newlib targets.
4838         * init.c: Add RTEMS specific version of __gnat_initialize().
4840 2003-01-28  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4842         * adaint.c, adaint.h, gmem.c, init.c: Update copyright year.
4844 2003-01-27  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
4846         * init.c (__gnat_error_handler): Make msg const.
4848         * gmem.c (convert_addresses): Move declaration ...
4849         * adaint.h: ... here.
4850         * adaint.c (convert_addresses): Adapt addrs type to match
4851         prototype.
4853         * adaint.c (__gnat_try_lock): Cast pid_t to long, adapt format.
4855 2003-01-24  Andreas Schwab  <schwab@suse.de>
4857         * ada-tree.h (SET_TYPE_DIGITS_VALUE): Add intermediate cast to
4858         size_t to avoid warning.
4860 2003-01-21  Zack Weinberg  <zack@codesourcery.com>
4862         * Make-lang.in: Disable -Werror for tracebak.c and b_gnatb.c.
4864 2003-01-09  Geoffrey Keating  <geoffk@apple.com>
4866         * gnat_rm.texi: Remove RCS version number.
4868         * ada-tree.h (union lang_tree_node): Add chain_next option.
4870 2003-01-09  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
4872         * Make-lang.in (ada.install-info, ada.install-common,
4873         ada.uninstall): Prepend $(DESTDIR) to the destination
4874         directory in all (un)installation commands.
4875         * Makefile.in (install-gnatlib, install-rts): Ditto.
4877 2002-12-28  Joseph S. Myers  <jsm@polyomino.org.uk>
4879         * gnat_rm.texi, gnat_ug.texi: Use @copying.
4880         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
4881         gnat_ug_wnt.texi: Regenerate.
4883 2002-12-23  Joseph S. Myers  <jsm@polyomino.org.uk>
4885         * gnat_rm.texi: Include gcc-common.texi.  Use GCC version number
4886         only.
4887         * Make-lang.in ($(srcdir)/ada/gnat_ug_unx.info,
4888         $(srcdir)/ada/gnat_ug_vms.info, $(srcdir)/ada/gnat_ug_vxw.info,
4889         $(srcdir)/ada/gnat_ug_wnt.info, $(srcdir)/ada/gnat_rm.info,
4890         ada/gnat_ug_unx.dvi, ada/gnat_ug_vms.dvi, ada/gnat_ug_vxw.dvi,
4891         ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on
4892         $(srcdir)/doc/include/gcc-common.texi.
4894 2002-12-15   Geert Bosch <bosch@gnat.com>
4896         * sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting
4898 2002-12-14   Geert Bosch <bosch@gnat.com>
4900         * sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional
4901         case of a body created for a Renaming_As_Body, on which
4902         conformance checks are not performed. Fixes PR ada/5690.
4904 2002-11-30  Zack Weinberg  <zack@codesourcery.com>
4906         * cuintp.c, decl.c, deftarg.c, misc.c, targtyps.c, trans.c,
4907         utils.c, utils2.c: Include coretypes.h and tm.h, and system.h when
4908         not already included.
4909         * Make-lang.in: Update dependencies.
4911 2002-11-18  Nathanael Nerode  <neroden@gcc.gnu.org>
4912         * adaint.c (__gnat_tmp_name): Better, but good enough for now,
4913         solution to buffer overflow bug on GNU/Linux.
4915 2002-11-14  Nathanael Nerode  <neroden@gcc.gnu.org>
4916         Closes PR ada/5856 and PR ada/6919 !
4917         * bindgen.adb: Remove all references to Public_Version.
4918         * comperr.adb: Remove all references to Public_Version and
4919         GNATPRO_Version; correct bug reporting instructions.
4920         * comperr.ads: Change to match bug box.
4921         * gnatvsn.ads: Remove all references to Public version and
4922         GNATPRO version.
4924 2002-11-13  Nathanael Nerode  <neroden@gcc.gnu.org>
4925         PR ada/6919
4926         * adaint.c (__gnat_tmp_name): Remove buffer overflow bug on
4927         GNU/Linux.
4929         PR ada/6558
4930         * config-lang.in: Remove diff_excludes.
4932 2002-11-05  Graham Stott  <graham.stott@btinternet.com>
4933         PR ada/8358
4934         * trans.c (gnu_pending_elaboration_lists): New GC root.
4935         (build_unit_elab): Use..
4937 2002-10-30   Geert Bosch <bosch@gnat.com>
4938         PR ada/6558
4939         * misc.c : Include optabs.h
4941         * Make-lang.in (misc.o): Add dependency on optabs.h
4943 2002-10-29   Geert Bosch <bosch@gnat.com>
4944         PR ada/6558
4945         * Make-lang.in (gnatbind): Depend on CONFIG_H
4947 2002-10-29  Geert bosch  <bosch@gnat.com>
4948         PR ada/6558
4949         * misc.c: Unrevert misc.c (1.13)
4951 2002-10-28  Nathanael Nerode  <neroden@gcc.gnu.org>
4953         * a-chlat9.ads a-cwila9.ads a-dynpri.adb a-retide.adb: Update
4954         maintainership comments.
4956 2002-09-25  Nathanael Nerode  <neroden@gcc.gnu.org>
4957         PR ada/5904
4958         * 5ataprop.adb 5atpopsp.adb 5bosinte.adb 5ftaprop.adb
4959         5gtaprop.adb 5htaprop.adb 5rosinte.ads 5staprop.adb
4960         5stpopse.adb 5vtaspri.ads 5zintman.adb 5ztaprop.adb
4961         7staprop.adb: Correct statements in comments about
4962         maintainership of GNAT.
4964         PR ada/5904
4965         * 1ssecsta.adb 1ssecsta.ads adadecode.c adadecode.h aux-io.c
4966         gnatname.adb gnatname.ads mkdir.c osint-b.adb osint-b.ads
4967         osint-c.adb osint-c.ads osint-l.adb osint-l.ads osint-m.adb
4968         osint-m.ads prj-makr.adb prj-makr.ads prj-pp.adb prj-pp.ads
4969         s-atacco.ads s-traceb.adb s-traceb.ads s-traces.adb
4970         s-traces.ads s-tratas.adb s-tratas.ads sinput-d.adb
4971         sinput-d.ads switch-b.adb switch-b.ads switch-c.adb
4972         switch-c.ads switch-m.adb switch-m.ads: Correct statements in
4973         comments about maintainership of GNAT.
4975         PR ada/6919 (forward port of patch for PR ada/5904)
4976         * 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads
4977         4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb
4978         4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads
4979         4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads
4980         4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb
4981         4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb
4982         4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb
4983         52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads
4984         5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads
4985         5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads
4986         5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads
4987         5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb
4988         5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads
4989         5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads
4990         5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads
4991         5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads
4992         5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads
4993         5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads
4994         5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb
4995         5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads
4996         5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads
4997         5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb
4998         5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads
4999         5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb
5000         5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb
5001         5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb
5002         5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb
5003         5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb
5004         7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb
5005         a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb
5006         a-chahan.ads a-colien.adb a-colien.ads a-colire.adb
5007         a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads
5008         a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads
5009         a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads
5010         a-except.adb a-except.ads a-excpol.adb a-exctra.adb
5011         a-exctra.ads a-filico.adb a-filico.ads a-finali.adb
5012         a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads
5013         a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb
5014         a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads
5015         a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb
5016         a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb
5017         a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb
5018         a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads
5019         a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads
5020         a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads
5021         a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads
5022         a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb
5023         a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb
5024         a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads
5025         a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads
5026         a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads
5027         a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads
5028         a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads
5029         a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads
5030         a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads
5031         a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads
5032         a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads
5033         a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads
5034         a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads
5035         a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb
5036         a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads
5037         a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads
5038         a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads
5039         a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads
5040         a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads
5041         a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads
5042         a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb
5043         a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h
5044         adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads
5045         alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb
5046         back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads
5047         binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb
5048         bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads
5049         ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads
5050         csets.adb csets.ads csinfo.adb cstand.adb cstand.ads
5051         cstreams.c cuintp.c debug.adb debug.ads debug_a.adb
5052         debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c
5053         einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h
5054         errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c
5055         exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads
5056         exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb
5057         exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads
5058         exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb
5059         exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads
5060         exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb
5061         exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb
5062         exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb
5063         exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb
5064         exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb
5065         exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb
5066         exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads
5067         exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h
5068         final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads
5069         fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb
5070         freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb
5071         g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads
5072         g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h
5073         gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb
5074         gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb
5075         gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb
5076         gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads
5077         gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads
5078         gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads
5079         i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb
5080         i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads
5081         i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads
5082         i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads
5083         impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c
5084         itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h
5085         lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb
5086         lib-load.ads lib-sort.adb lib-util.adb lib-util.ads
5087         lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb
5088         lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb
5089         makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c
5090         namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h
5091         nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb
5092         osint.ads output.adb output.ads par-ch10.adb par-ch11.adb
5093         par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb
5094         par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb
5095         par-endh.adb par-labl.adb par-load.adb par-prag.adb
5096         par-sync.adb par-tchk.adb par-util.adb par.adb par.ads
5097         prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb
5098         prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads
5099         prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads
5100         prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads
5101         prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads
5102         prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h
5103         repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads
5104         rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads
5105         s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads
5106         s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb
5107         s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads
5108         s-direio.adb s-direio.ads s-except.ads s-exctab.adb
5109         s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads
5110         s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads
5111         s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads
5112         s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads
5113         s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads
5114         s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads
5115         s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb
5116         s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads
5117         s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads
5118         s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads
5119         s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb
5120         s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb
5121         s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb
5122         s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb
5123         s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb
5124         s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb
5125         s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb
5126         s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb
5127         s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads
5128         s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb
5129         s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads
5130         s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads
5131         s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads
5132         s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads
5133         s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads
5134         s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads
5135         s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads
5136         s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads
5137         s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads
5138         s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads
5139         s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads
5140         s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads
5141         s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads
5142         s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads
5143         s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads
5144         s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads
5145         s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads
5146         s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads
5147         s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads
5148         s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads
5149         s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads
5150         s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads
5151         s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads
5152         s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads
5153         s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads
5154         s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads
5155         s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads
5156         s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads
5157         s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads
5158         s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads
5159         s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads
5160         s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads
5161         s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads
5162         s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb
5163         s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb
5164         s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb
5165         s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb
5166         s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb
5167         s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb
5168         s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads
5169         s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads
5170         s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads
5171         s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads
5172         s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads
5173         s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads
5174         s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads
5175         s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads
5176         s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads
5177         s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads
5178         s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads
5179         s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads
5180         s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb
5181         s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb
5182         s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb
5183         s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb
5184         s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb
5185         s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb
5186         s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads
5187         scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb
5188         sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads
5189         sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb
5190         sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb
5191         sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads
5192         sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb
5193         sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads
5194         sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb
5195         sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb
5196         sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb
5197         sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb
5198         sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb
5199         sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads
5200         sem_type.adb sem_type.ads sem_util.adb sem_util.ads
5201         sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads
5202         sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb
5203         sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb
5204         sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads
5205         snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb
5206         stringt.ads stringt.h style.adb style.ads stylesw.adb
5207         stylesw.ads switch.adb switch.ads sysdep.c system.ads
5208         table.adb table.ads targparm.adb targparm.ads targtyps.c
5209         tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads
5210         tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb
5211         treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads
5212         types.adb types.ads types.h uintp.adb uintp.ads uintp.h
5213         uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb
5214         usage.ads utils.c utils2.c validsw.adb validsw.ads
5215         widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb
5216         xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb
5217         xtreeprs.adb: Correct statements in comments about maintainership
5218         of GNAT.
5220 2002-09-23  Zack Weinberg  <zack@codesourcery.com>
5222         * Make-lang.in (EXTRA_GNATBIND_OBJS): Add version.o.
5223         * Makefile.in (TOOLS_LIBS): Add ../../version.o.
5224         * gnatvsn.ads: Gnat_Version_String is now a function.
5225         * gnatvsn.adb: New file.  When asked for Gnat_Version_String,
5226         copy the C version_string into a String and return it.
5227         * gnatcmd.adb, gnatkr.adb, gnatlbr.adb, gnatlink.adb,
5228         gnatls.adb,gnatmake.adb, gnatprep.adb, gnatpsta.adb:
5229         Remove pragma Ident (Gnat_Version_String).  If this was the
5230         sole use of package Gnatvsn, remove the with statement too.
5231         * gnat1drv.adb: Tweak -gnatv output.
5233 2002-09-17  Richard Henderson  <rth@redhat.com>
5235         * trans.c (tree_transform): Use real_ldexp not REAL_VALUE_LDEXP.
5236         * config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2): Use real_2expN.
5237         * config/mips/mips.md (fixuns_truncdfsi2): Likewise.
5238         (fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
5239         * config/m68k/m68k.c (floating_exact_log2): Use real_exponent
5240         and real_2expN instead of a loop.
5241         * doc/tm.texi (REAL_VALUE_LDEXP): Remove.
5242         (REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove.
5244 2002-08-25  Andre Leis <a.leis@gmx.net>
5245             David Billinghurst (David.Billinghurst@riotinto.com>
5247         * sysdep.c (__gnat_ttyname): include <termios.h> on cygwin
5249 2002-08-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5251         * Make-lang.in (gnatbind$(exeext)): Link with $(SYSLIBS).
5252         Remove $(CONFIG_H) dependency.
5254 2002-08-08  Nathan Sidwell  <nathan@codesourcery.com>
5256         * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
5258 2002-07-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5260         * adadecode.c (ada_demangle): Use xstrdup in lieu of
5261         xmalloc/strcpy.
5262         * misc.c (gnat_decode_option): Likewise.
5264 2002-07-15  Florian Weimer  <fw@deneb.enyo.de>
5266         * make.adb (Add_Switch): Make Generic_Position a procedure.  The
5267         function approach did not work well because of a side effect (the
5268         function call could reallocate the table which was being indexed
5269         using its result). Fixes ada/4851. [RESURRECTED]
5271 2002-07-01  Roger Sayle  <roger@eyesopen.com>
5273         * ada/utils.c (builtin_function): Accept an additional parameter.
5275 2002-06-28  Andreas Jaeger  <aj@suse.de>
5277         PR ada/7144
5278         * Makefile.in: Fix typo in comment, patch by Adrian Knoth
5279         <adi@thur.de>.
5281 2002-06-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5283         * Makefile.in (SHELL): Set to @SHELL@.
5285 2002-06-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5287         * utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit
5288         array size calculation.
5290 2002-06-04  Andreas Jaeger  <aj@suse.de>
5292         * Make-lang.in (gnatbind): Readd rule that has been lost in last
5293         patch.
5295 2002-06-03  Geoffrey Keating  <geoffk@redhat.com>
5297         Merge from pch-branch:
5299         * config-lang.in (gtfiles): Add ada-tree.h.
5300         * ada-tree.h (SET_TYPE_CI_CO_LIST): New.
5301         (SET_TYPE_MODULUS): New.
5302         (SET_TYPE_INDEX): New.
5303         (SET_TYPE_DIGITS_VALUE): New.
5304         (SET_TYPE_RM_SIZE): New.
5305         (SET_TYPE_UNCONSTRAINED_ARRAY): New.
5306         (SET_TYPE_ADA_SIZE): New.
5307         (SET_TYPE_ACTUAL_BOUNDS): New.
5308         (SET_DECL_CONST_CORRESPONDING_VAR): New.
5309         (SET_DECL_ORIGINAL_FIELD): New.
5310         (TREE_LOOP_ID): Correct typo.
5311         * decl.c: Use new macros.
5312         * utils.c: Include debug.h, use new macros.
5313         * utils2.c: Use new macros.
5315         * ada-tree.h: Update all macros for new tree description.
5316         (struct tree_loop_id): New.
5317         (union lang_tree_node): New.
5318         (struct lang_decl): New.
5319         (struct lang_type): New.
5320         * misc.c (gnat_mark_tree): Delete.
5321         (LANG_HOOKS_MARK_TREE): Delete.
5322         * trans.c (tree_transform): No longer any need to cast
5323         for TREE_LOOP_ID.
5325         * utils.c (struct language_function): New dummy structure.
5327         * Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
5328         (misc.o): Likewise.
5329         (utils.o): Likewise; also gtype-ada.h.
5330         * Make-lang.in (gnat1): Add dependency on s-gtype.
5331         (gnatbind): Add dependency on $(CONFIG_H).
5332         * utils.c: Correct last #include.
5333         (stuct e_stack): Remove unnecessary 'static'.
5334         (mark_e_stack): Remove unused prototype.
5336         * scn-nlit.adb: Remove whitespace after version number to
5337         keep lines under 80 chars.
5338         * snames.adb: Likewise.
5339         * treepr.ads: Likewise.
5341         * Makefile.in (decl.o): Include gt-ada-<filename>.h.
5342         (misc.o): Likewise.
5343         (utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
5344         * config-lang.in (gtfiles): New.
5345         * decl.c: Use gengtype for roots.
5346         * gigi.h: Use gengtype for roots.
5347         * trans.c: Use gengtype for roots.
5348         * utils.c: Use gengtype for roots, marking.  Include gtype-ada.h.
5350 2002-06-02  Gabriel Dos Reis  <gdr@codesourcery.com>
5352         * misc.c (gnat_init): Adjust setting of internal_error_function.
5354 2002-06-01  Joseph S. Myers  <jsm28@cam.ac.uk>
5356         * gnat_ug.texi: Use @ifnottex instead of @ifinfo.
5357         * gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
5358         gnat_ug_wnt.texi: Regenerate.
5360 2002-05-31  Florian Weimer  <fw@deneb.enyo.de>
5362         * 5ntaprop.adb (with System.OS_Primitives): Remove.
5364         * cstreams.c (max_path_len): Move from here ...
5365         * adaint.c (__gnat_max_path_len): ... to here.
5366         * adaint.c (__gnat_max_path_len): Declare.
5367         * g-dirope.adb (Max_Path): Adjust.
5368         * g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
5369         * i-cstrea.ads (max_path_len): Adjust.
5370         * osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
5371         * xr_tabls.adb (Dir_Name.Max_Path: Adjust.
5373         * Makefile.in, Make-lang.in: Documentation is now built in
5374         Make-lang.in.  Store Info and generated Texinfo files in the
5375         source directory.
5376         * gnat_ug.texi: Remove CVS keywords, correct version number.
5377         Set file name correctly.
5379         * gnat_ug_*.texi: Add.
5380         * .cvsignore: Ignore generated Texinfo files.
5382 2002-05-30  Zack Weinberg  <zack@codesourcery.com>
5384         * ada.h: Add MI guard macro.
5385         (SUBTYPE): Define constants with an anonymous enum, not static
5386         const variables.
5387         (IN): Cast constants to appropriate type before use.
5389 2002-05-26  Joseph S. Myers  <jsm28@cam.ac.uk>
5391         * gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
5392         (experimental)".
5394 2002-05-23  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5396         * Make-lang.in (CP, ECHO): Copy from Makefile.in.
5397         (X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
5398         (ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
5399         (ALL_ADA_CFLAGS): Likewise.
5400         (ADA_INCLUDES): Likewise.
5401         Adapt for new working dir.
5402         (GNATBIND): Use Makefile.in version.
5403         (.SUFFIXES): Copy from Makefile.in.
5404         (ada-warn): Define.
5405         (.adb.o, .ads.o): Copy from Makefile.in.
5406         Added $(OUTPUT_OPTION).
5407         (GNAT1_C_OBJS): Moved from Makefile.in.
5408         Prefix with ada subdir.
5409         (GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
5410         (EXTRA_GNAT1_OBJS): Moved from Makefile.in.
5411         Adapt for new working dir.
5412         (EXTRA_GNATBIND_OBJS): Likewise.
5413         (ADA_BACKEND): Moved from Makefile.in.
5414         Renamed to avoid conflict with global BACKEND.
5415         Use that one.
5416         (TARGET_ADA_SRCS): Moved from Makefile.in.
5417         (gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
5418         Use ADA_BACKEND.
5419         (gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
5420         (ada_extra_files): Moved from Makefile.in.
5421         Prefix with ada subdir.
5422         (ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
5423         (ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
5424         (ada/nmake.ads): Likewise.
5425         (update-sources): Moved from Makefile.in.
5426         Prefix with ada subdir.
5427         (ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
5428         (ADA_TREE_H): Likewise.
5429         (ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
5430         (ada/memtrack.o): Likewise.
5431         (ada/adadecode.o): Likewise.
5432         Update dependencies.
5433         (ada/adaint.o): New.
5434         (ada/argv.o): Moved from Makefile.in.
5435         Prefix with ada subdir.
5436         Update dependencies.
5437         (ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
5438         (ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
5439         (ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
5440         Prefix with ada subdir.
5441         (ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
5442         (GNAT DEPENDENCIES): Regenerate.
5443         * Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
5444         toplevel Makefile.in.
5445         (EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
5446         (TARGET_ADA_SRCS): Removed.
5447         (GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
5448         (GNATBIND_OBJS): Likewise.
5449         (ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
5450         (BACKEND): Removed.
5451         (../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
5452         (TREE_H): Likewise.
5453         (ada_extra_files): Likewise.
5454         (b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
5455         (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
5456         (update-sources): Likewise.
5457         (sdefault.adb, stamp-sdefault, sdefault.o): Likewise
5458         (ADA_TREE_H): Likewise.
5459         (adadecoce.o): Likewise.
5460         (cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
5461         (GNAT DEPENDENCIES): Likewise.
5463 2002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5465         * Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
5466         * Makefile.in: Likewise.
5468 2002-05-14  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
5470         * Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
5471         Restore $(CONFIG_H) and prefix.o dependencies.
5472         (ada.stage[1-4]): Depend on stage?-start.
5474         * Makefile.in (b_gnatb.c): Depend on interfac.o.
5476 2002-05-02  Jim Wilson  <wilson@redhat.com>
5478         * utils.c (finish_record_type): Change record_size to record_type.
5480 2001-05-02  John David Anglin  <dave@hiauly1.hia.nrc.ca>
5482         * ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
5483         (ALL_ADA_CFLAGS): Define.  Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
5484         ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
5486 2002-04-25  Neil Booth  <neil@daikokuya.demon.co.uk>
5488         * misc.c (gnat_parse_file): Update.
5490 2002-04-24  Neil Booth  <neil@daikokuya.demon.co.uk>
5492         * misc.c (gnat_init): Don't set lang_attribute_common.
5494 2002-04-21  Joseph S. Myers  <jsm28@cam.ac.uk>
5496         * gnat_rm.texi: Use @ifnottex instead of @ifinfo.
5498 2002-04-21  Florian Weimer  <fw@deneb.enyo.de>
5500         * gnat_ug.texi: New file.
5502         * gnat_rm.texi: Do not include texiplus.texi.  Include fdl.texi
5503         instead of gfdl.texi
5505         * xgnatug.adb, ug_words: New files.
5507         * Makefile.in (doc, dvi): New targets.  Build gnat_ug_*,
5508         gnat_rm and gnat-style manuals.
5510 2002-04-18  Neil Booth  <neil@daikokuya.demon.co.uk>
5512         * gigi.h (incomplete_type_error): Remove.
5513         * utils.c (incomplete_type_error): Remove.
5515 2002-04-16  Mark Mitchell  <mark@codesourcery.com>
5517         * trans.c (tree_transform): Add has_scope argument to
5518         expand_start_stmt_expr.
5520 2002-04-04  Neil Booth  <neil@daikokuya.demon.co.uk>
5522         * gigi.h (truthvalue_conversion): Rename.
5523         * misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
5524         * trans.c (tree_transform): Update.
5525         * utils2.c (truthvalue_conversion): Rename, update.
5526         (build_binary_op, build_unary_op): Update.
5528 2002-04-04  Laurent Guerby  <guerby@acm.org>
5530         * make.adb: Implement -margs, remove restriction about file name placement.
5531         * makeusg.adb: Documentation update.
5532         * Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
5533         * Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
5535 2002-04-04  Neil Booth  <neil@daikokuya.demon.co.uk>
5537         * utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
5538         (builtin_function): Similarly.
5540 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
5542         * decl.c (gnat_to_gnu_entity): Update.
5543         * gigi.h (mark_addressable): Rename.
5544         * misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
5545         * trans.c (tree_transform): Update.
5546         * utils.c (create_var_decl): Update.
5547         * util2.c (build_binary_op, build_unary_op,
5548         fill_vms_descriptor): Update.
5549         (mark_addressable): Rename, update.
5551 2002-04-01  Neil Booth  <neil@daikokuya.demon.co.uk>
5553         * gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
5554         Rename.
5555         * misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
5556         LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
5557         * trans.c (tree_transform, convert_with_check): Update.
5558         * utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
5559         Rename.
5561 2002-03-31  Neil Booth  <neil@daikokuya.demon.co.uk>
5563         * gigi.h (finish_incomplete_decl): Rename.
5564         * misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
5565         * utils.c (gnat_init_decl_processing): Don't set hook.
5566         (finish_incomplete_decl): Rename.
5568 2002-03-29  Andreas Schwab  <schwab@suse.de>
5570         * Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
5571         directory.
5573 2001-03-28  Robert Dewar <dewar@gnat.com>
5575         * checks.ads:
5576         (Remove_Checks): New procedure
5578         * checks.adb:
5579         (Remove_Checks): New procedure
5581         * exp_util.adb:
5582         Use new Duplicate_Subexpr functions
5583         (Duplicate_Subexpr_No_Checks): New procedure
5584         (Duplicate_Subexpr_No_Checks_Orig): New procedure
5585         (Duplicate_Subexpr): Restore original form (checks duplicated)
5586         (Duplicate_Subexpr): Call Remove_Checks
5588         * exp_util.ads:
5589         (Duplicate_Subexpr_No_Checks): New procedure
5590         (Duplicate_Subexpr_No_Checks_Orig): New procedure
5591         Add 2002 to copyright notice
5593         * sem_util.adb: Use new Duplicate_Subexpr functions
5595         * sem_eval.adb:
5596         (Eval_Indexed_Component): This is the place to call
5597         Constant_Array_Ref and to replace the value. We simply merge
5598         the code of this function in here, since it is now no longer
5599         used elsewhere. This fixes the problem of the back end not
5600         realizing we were clever enough to see that this was
5601         constant.
5602         (Expr_Val): Remove call to Constant_Array_Ref
5603         (Expr_Rep_Val): Remove call to Constant_Array_Ref
5604         Minor reformatting
5605         (Constant_Array_Ref): Deal with string literals (patch
5606         suggested by Zack Weinberg on the gcc list)
5608 2001-03-28  Ed Schonberg <schonber@gnat.com>
5610         * exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
5611         Duplicate_Subexpr_Move_Checks.
5613         * exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
5614         Duplicate_Subexpr_Move_Checks.
5616         * sem_eval.adb: (Constant_Array_Ref): Verify that constant
5617         value of array exists before retrieving it (it may a private
5618         protected component in a function).
5620 2002-03-28   Geert Bosch <bosch@gnat.com>
5622         * prj-pp.adb : New file.
5624         * prj-pp.ads : New file.
5626 2002-03-28  Andreas Jaeger  <aj@suse.de>
5628         * Makefile.in (stamp-sdefault): Fix path for Makefile.
5630 2002-03-28  Neil Booth  <neil@daikokuya.demon.co.uk>
5632         * misc.c (gnat_expand_expr): Move prototype.
5634 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
5636         * misc.c (insert_default_attributes): Remove.
5638 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
5640         * misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
5641         (gnat_init): Don't set hook.
5642         (gnat_expand_expr): Fix prototype.
5644 2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk>
5646         * misc.c (ggc_p): Remove.
5648 2002-03-27  Geert Bosch  <bosch@gnat.com>
5650         * prj-makr.ads, prj-makr.adb : New files.
5652 2002-03-26  Neil Booth  <neil@daikokuya.demon.co.uk>
5654         * misc.c (LANG_HOOKS_MARK_TREE): Redefine.
5655         (lang_mark_tree): Make static, rename.
5657 2002-03-25  Neil Booth  <neil@daikokuya.demon.co.uk>
5659         * misc.c (maybe_build_cleanup): Remove.
5661 2002-03-24  Neil Booth  <neil@daikokuya.demon.co.uk>
5663         * gigi.h (yyparse): Remove.
5665 2002-03-23  Florian Weimer  <fw@deneb.enyo.de>
5667         * gnat_rm.texi: Sync with ACT version.
5668           (From Ben Brosgol <brosgol@gnat.com>)
5670 2002-03-20  Neil Booth  <neil@daikokuya.demon.co.uk>
5672         * misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
5673         (gnat_init): Remove old hook.
5675 2002-03-17  Neil Booth  <neil@daikokuya.demon.co.uk>
5677         * misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
5678         (yyparse): Rename gnat_parse_file.
5680 2002-03-14  Geoffrey Keating  <geoffk@redhat.com>
5682         Delete all lines containing "$Revision:".
5683         * xeinfo.adb: Don't look for revision numbers.
5684         * xnmake.adb: Likewise.
5685         * xsinfo.adb: Likewise.
5686         * xsnames.adb: Likewise.
5687         * xtreeprs.adb: Likewise.
5689 2002-03-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5691         * misc.c (gnat_tree_code_type, gnat_tree_code_length,
5692         gnat_tree_code_name): Delete.
5693         (tree_code_type, tree_code_length, tree_code_name): Define.
5694         (gnat_init): Don't try to copy into the various tree_code
5695         arrays.
5697 2002-03-11  Richard Henderson  <rth@redhat.com>
5699         * Makefile.in (.NOTPARALLEL): Add fake tag.
5701 2002-03-07  Geert Bosch  <bosch@gnat.com>
5703         * adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
5704         s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
5705         switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
5706         switch-m.adb, switch-m.ads : New files.
5708 2002-03-07  Geert Bosch  <bosch@gnat.com>
5710         * 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
5711         4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
5712         4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
5713         4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
5714         5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
5715         5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
5716         5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
5717         5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
5718         5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
5719         5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
5720         5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
5721         5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
5722         5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
5723         5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
5724         5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
5725         5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
5726         5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
5727         5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
5728         5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
5729         5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
5730         7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
5731         Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
5732         a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
5733         a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
5734         a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
5735         a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
5736         a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
5737         a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
5738         a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
5739         adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
5740         atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
5741         bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
5742         csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
5743         einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
5744         eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
5745         exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
5746         exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
5747         exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
5748         exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
5749         exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
5750         expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
5751         freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
5752         g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
5753         g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
5754         g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
5755         g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
5756         g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
5757         g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
5758         gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
5759         gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
5760         gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
5761         i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
5762         impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
5763         lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
5764         lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
5765         memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
5766         mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
5767         nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
5768         output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
5769         par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
5770         prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
5771         prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
5772         prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
5773         rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
5774         s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
5775         s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
5776         s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
5777         s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
5778         s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
5779         s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
5780         s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
5781         s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
5782         s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
5783         s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
5784         s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
5785         s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
5786         s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
5787         s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
5788         s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
5789         sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
5790         sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
5791         sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
5792         sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
5793         sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
5794         sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
5795         sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
5796         sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
5797         sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
5798         sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
5799         snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
5800         stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
5801         table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
5802         tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
5803         treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
5804         types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
5805         utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
5806         xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
5808         * 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
5809         g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
5810         mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
5811         osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
5813         * 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
5814         5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
5816         * mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
5817         to mdll-fil.ad[bs] and mdll-util.ad[bs]
5819         * mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
5820         from mdllfile.ad[bs] and mdlltool.ad[bs]
5822 2002-03-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
5824         * utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
5825         lieu of explicit sizeof/sizeof.
5827 2002-02-28  Neil Booth  <neil@daikokuya.demon.co.uk>
5829         * misc.c (copy_lang_decl): Remove.
5831 2002-02-27  Zack Weinberg  <zack@codesourcery.com>
5833         * misc.c: Delete traditional-mode-related code copied from the
5834         C front end but not used, or used only to permit the compiler
5835         to link.
5837 2002-02-07  Richard Henderson  <rth@redhat.com>
5839         * adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
5840         * adaint.h (__gnat_to_gm_time): Update prototype.
5842 2002-01-30  Richard Henderson  <rth@redhat.com>
5844         * trans.c (tree_transform) [N_Loop_Statement]: Use
5845         expand_exit_loop_top_cond.
5847 2001-12-23  Richard Henderson  <rth@redhat.com>
5849         * utils.c (end_subprog_body): Push GC context around
5850         rest_of_compilation for nested functions.
5852 2001-12-23  Richard Henderson  <rth@redhat.com>
5854         * 5nosinte.ads: Get definition of "int" from Interfaces.C.
5856 2001-12-23  Florian Weimer  <fw@deneb.enyo.de>
5858         * gnat-style.texi (Declarations and Types): Remove ancient style
5859         rule which was mandated by code generation issues.
5861         * gnat-style.texi (header): Add @dircategory, @direntry.
5862         (title page): Remove date.
5863         (general) Add @./@: where approriate, and two spaces after the
5864         full stop at the end of a sentence.  Use @samp markup when
5865         referring concrete lexical entities (keywords, attribute names
5866         etc.), and @syntax for ARM grammar elements. Use @r for English
5867         text in comments.  Use @emph for emphasis.  Change "if-statements"
5868         etc. to "if statements" (without @samp). Break long lines.  Make
5869         casing of section names consistent.
5870         (Identifiers): Use @samp markup for variable names.
5871         (Comments): Use @samp markup for comment characters. Line-end
5872         comments may follow any Ada code, not just statements.  Fix
5873         misspelling of "Integer" as "integer".
5874         (Loop statements): Do not use variable name "I", use "J".
5875         (Subprogram Declarations): Document alignment.
5876         (Subprogram Bodies, Block statements): Document empty line before
5877         "begin".
5879 2001-12-22  Florian Weimer  <fw@deneb.enyo.de>
5881         * make.adb (Add_Switch): Make Generic_Position a procedure.  The
5882         function approach did not work well because of a side effect (the
5883         function call could reallocate the table which was being indexed
5884         using its result). Fixes ada/4851.
5886 2001-12-19  Robert Dewar <dewar@gnat.com>
5888         * bindgen.adb: Minor reformatting
5890         * cstand.adb: Minor reformatting
5892         * fmap.adb: Minor reformatting
5893         Change name from Add for Add_To_File_Map (Add is much too generic)
5894         Change Path_Name_Of to Mapped_Path_Name
5895         Change File_Name_Of to Mapped_File_Name
5896         Fix copyright dates in header
5898         * fmap.ads:
5899         Change name from Add for Add_To_File_Map (Add is much too generic)
5900         Change Path_Name_Of to Mapped_Path_Name
5901         Change File_Name_Of to Mapped_File_Name
5902         Fix copyright dates in header
5904         * fname-uf.adb: Minor reformatting.  New names of stuff in Fmap.
5905         Add use clause for Fmap.
5907         * make.adb: Minor reformatting
5909         * osint.adb: Minor reformatting.  Change of names in Fmap.
5910         Add use clause for Fmap.
5912         * prj-env.adb: Minor reformatting
5914         * prj-env.ads: Minor reformatting
5916         * switch.adb: Minor reformatting.  Do proper raise of Bad_Switch if
5917         error found (there were odd exceptions to this general rule in
5918         -gnatec/-gnatem processing)
5920 2001-12-19  Olivier Hainque <hainque@gnat.com>
5922         * raise.c (__gnat_eh_personality): Exception handling personality
5923         routine for Ada.  Still in rough state, inspired from the C++ version
5924         and still containing a bunch of debugging artifacts.
5925         (parse_lsda_header, get_ttype_entry): Local (static) helpers, also
5926         inspired from the C++ library.
5928         * raise.c (eh_personality): Add comments. Part of work for the GCC 3
5929         exception handling integration.
5931 2001-12-19  Arnaud Charlet <charlet@gnat.com>
5933         * Makefile.in: Remove use of 5smastop.adb which is obsolete.
5934         (HIE_SOURCES): Add s-secsta.ad{s,b}.
5935         (HIE_OBJS): Add s-fat*.o
5936         (RAVEN_SOURCES): Remove files that are no longer required. Add
5937         interrupt handling files.
5938         (RAVEN_MOD): Removed, no longer needed.
5940 2001-12-19  Robert Dewar <dewar@gnat.com>
5942         * a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
5943         Add 2001 to copyright date
5945         * g-regpat.adb: Change pragma Inline_Always to Inline. There is no
5946         need to force universal inlining for these cases.
5948 2001-12-19  Arnaud Charlet <charlet@gnat.com>
5950         * s-taprob.adb: Minor clean ups so that this unit can be used in
5951         Ravenscar HI.
5953         * exp_ch7.adb: Allow use of secondary stack in HI mode.
5954         Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
5956 2001-12-19  Vincent Celier <celier@gnat.com>
5958         * prj-tree.ads (Project_Node_Record): Add comments for components
5959         Pkg_Id and Case_Insensitive.
5961 2001-12-19  Pascal Obry <obry@gnat.com>
5963         * g-socket.adb: Minor reformatting. Found while reading code.
5965 2001-12-19  Robert Dewar <dewar@gnat.com>
5967         * prj-tree.ads: Minor reformatting
5969 2001-12-20  Joseph S. Myers  <jsm28@cam.ac.uk>
5971         * config-lang.in (diff_excludes): Remove.
5973 2001-12-17  Ed Schonberg <schonber@gnat.com>
5975         * sem_res.adb (Resolve_Selected_Component): do not generate a
5976         discriminant check if the selected component is a component of
5977         the argument of an initialization procedure.
5979         * trans.c (tree_transform, case of arithmetic operators): If result
5980         type is private, the gnu_type is the base type of the full view,
5981         given that the full view itself may be a subtype.
5983 2001-12-17  Robert Dewar <dewar@gnat.com>
5985         * sem_res.adb: Minor reformatting
5987         * trans.c (tree_transform, case N_Real_Literal): Add missing third
5988         parameter in call to Machine (unknown horrible effects from this
5989         omission).
5991         * urealp.h: Add definition of Round_Even for call to Machine
5992         Add third parameter for Machine
5994 2001-12-17  Ed Schonberg <schonber@gnat.com>
5996         * sem_warn.adb (Check_One_Unit): Suppress warnings completely on
5997         predefined units in No_Run_Time mode.
5999 2001-12-17  Richard Kenner <kenner@gnat.com>
6001         * misc.c (insn-codes.h): Now include.
6003 2001-12-17  Olivier Hainque <hainque@gnat.com>
6005         * a-except.adb: Preparation work for future integration of the GCC 3
6006         exception handling mechanism
6007         (Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
6008         to factorize previous code sequences and make them externally callable,
6009         e.g. for the Ada personality routine when the GCC 3 mechanism is used.
6010         (Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
6011         Use the new notification routines.
6013 2001-12-17  Emmanuel Briot <briot@gnat.com>
6015         * prj-tree.ads (First_Choice_Of): Document the when others case
6017 2001-12-17  Arnaud Charlet <charlet@gnat.com>
6019         * bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
6020         HI-E mode, in order to support Ravenscar profile properly.
6022         * cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
6023         mode on 32 bits targets.
6025 2001-12-17  Vincent Celier <celier@gnat.com>
6027         * fmap.adb: Initial version.
6029         * fmap.ads: Initial version.
6031         * fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
6032         If search is successfully done, add to mapping.
6034         * frontend.adb: Initialize the mapping if a -gnatem switch was used.
6036         * make.adb:
6037         (Gnatmake): Add new local variable Mapping_File_Name.
6038          Create mapping file when using project file(s).
6039          Delete mapping file before exiting.
6041         * opt.ads (Mapping_File_Name): New variable
6043         * osint.adb (Find_File): Use path name found in mapping, if any.
6045         * prj-env.adb (Create_Mapping_File): New procedure
6047         * prj-env.ads (Create_Mapping_File): New procedure.
6049         * switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
6050         (Mapping_File)
6052         * usage.adb: Add entry for new switch -gnatem.
6054         * Makefile.in: Add dependencies for fmap.o.
6056 2001-12-17  Ed Schonberg <schonber@gnat.com>
6058         * sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
6059         is a package instantiation rewritten as a package body.
6060         (Install_Withed_Unit): Undo previous change, now redundant.
6062 2001-12-17  Gary Dismukes <dismukes@gnat.com>
6064         * layout.adb:
6065         (Compute_Length): Move conversion to Unsigned to callers.
6066         (Get_Max_Size): Convert Len expression to Unsigned after calls to
6067         Compute_Length and Determine_Range.
6068         (Layout_Array_Type): Convert Len expression to Unsigned after calls to
6069         Compute_Length and Determine_Range.
6070         Above changes fix problem with length computation for supernull arrays
6071         where Max (Len, 0) wasn't getting applied due to the Unsigned
6072         conversion used by Compute_Length.
6074 2001-12-17  Arnaud Charlet <charlet@gnat.com>
6076         * rtsfind.ads:
6077         (OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
6078          System.Secondary_Stack.
6079         (OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
6080          in HI-E mode.
6081         Remove unused entity RE_Exception_Data.
6083         * rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
6085         * rident.ads (No_Secondary_Stack): New restriction.
6087 2001-12-17  Joel Brobecker <brobecke@gnat.com>
6089         * gnat_rm.texi: Fix minor typos. Found while reading the section
6090         regarding "Bit_Order Clauses" that was sent to a customer.
6091         Very interesting documentation!
6093 2001-12-17  Robert Dewar <dewar@gnat.com>
6095         * sem_case.adb (Choice_Image): Avoid creating improper character
6096         literal names by using the routine Set_Character_Literal_Name. This
6097         fixes bombs in certain error message cases.
6099 2001-12-17  Arnaud Charlet <charlet@gnat.com>
6101         * a-reatim.adb: Minor reformatting.
6103 2001-12-17  Ed Schonberg <schonber@gnat.com>
6105         * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
6106         case where the formal is an extension of another formal in the current
6107         unit or in a parent generic unit.
6109 2001-12-17  Arnaud Charlet <charlet@gnat.com>
6111         * s-tposen.adb: Update comments.  Minor reformatting.
6112         Minor code clean up.
6114         * s-tarest.adb: Update comments.  Minor code reorganization.
6116 2001-12-17  Gary Dismukes <dismukes@gnat.com>
6118         * exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
6119         when Java_VM.
6121 2001-12-17  Robert Dewar <dewar@gnat.com>
6123         * exp_attr.adb: Minor reformatting
6125 2001-12-17  Ed Schonberg <schonber@gnat.com>
6127         * sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
6128         derivations nested within a child unit: verify that the parent
6129         type is declared in an outer scope.
6131 2001-12-17  Robert Dewar <dewar@gnat.com>
6133         * sem_ch12.adb: Minor reformatting
6135 2001-12-17  Ed Schonberg <schonber@gnat.com>
6137         * sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
6138         warning if current unit is a predefined one, from which bodies may
6139         have been deleted.
6141 2001-12-17  Robert Dewar <dewar@gnat.com>
6143         * eval_fat.ads: Add comment that Round_Even is referenced in Ada code
6144         Fix header format. Add 2001 to copyright date.
6146         * exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
6147         which caused CE during compilation if checks were enabled.
6149 2001-12-17  Vincent Celier <celier@gnat.com>
6151         * make.adb:
6152         (Switches_Of): New function
6153         (Test_If_Relative_Path): New procedure
6154         (Add_Switches): Use new function Switches_Of
6155         (Collect_Arguments_And_Compile): Use new function Switches_Of.
6156         When using a project file, test if there are any relative
6157         search path. Fail if there are any.
6158         (Gnatmake): Only add switches for the primary directory when not using
6159         a project file. When using a project file, change directory to the
6160         object directory of the main project file. When using a project file,
6161         test if there are any relative search path. Fail if there are any.
6162         When using a project file, fail if specified executable is relative
6163         path with directory information, and prepend executable, if not
6164         specified as an absolute path, with the exec directory.  Make sure
6165         that only one -o switch is transmitted to the linker.
6167         * prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
6169         * prj-nmsc.adb:
6170         (Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
6171         when using a non standard naming scheme.
6172         (Check_Ada_Naming_Scheme): Make sure that error messages
6173         do not raise exceptions.
6174         (Is_Illegal_Append): Return True if there is no dot in the suffix.
6175         (Language_Independent_Check): Check the exec directory.
6177         * prj.adb (Project_Empty): Add new component Exec_Directory
6179         * prj.ads:
6180         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
6181         (Project_Data): Add component Exec_Directory
6183         * snames.adb: Updated to match snames.ads revision 1.215
6185         * snames.ads: Added Exec_Dir
6187 2001-12-17  Robert Dewar <dewar@gnat.com>
6189         * make.adb: Minor reformatting
6191         * prj-nmsc.adb: Minor reformatting
6193         * snames.adb: Updated to match snames.ads
6195         * snames.ads: Alphebetize entries for project file
6197 2001-12-17  Ed Schonberg <schonber@gnat.com>
6199         * trans.c (process_freeze_entity): Do nothing if the entity is a
6200         subprogram that was already elaborated.
6202 2001-12-17  Richard Kenner <kenner@gnat.com>
6204         * decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
6205         and Esize if object is referenced via pointer.
6207 2001-12-17  Ed Schonberg <schonber@gnat.com>
6209         * sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
6210         is discrete before analyzing choices.
6212 2001-12-17  Joel Brobecker <brobecke@gnat.com>
6214         * bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
6215         containing the name of the Ada Main Program. This string is mainly
6216         intended for the debugger.
6217         (Gen_Output_File_C): Do the equivalent change when generating a C file.
6219 2001-12-17  Robert Dewar <dewar@gnat.com>
6221         * ali.adb: Set new Dummy_Entry field in dependency entry
6223         * ali.ads: Add Dummy_Entry field to source dependency table
6225         * bcheck.adb (Check_Consistency): Ignore dummy D lines
6227         * lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
6229         * lib-writ.ads: Document dummy D lines for missing files.
6231         * types.ads: (Dummy_Time_Stamp): New value for non-existant files
6233 2001-12-17  Robert Dewar <dewar@gnat.com>
6235         * ali.adb: Type reference does not reset current file.
6237         * ali.adb: Recognize and scan renaming reference
6239         * ali.ads: Add spec for storing renaming references.
6241         * lib-xref.ads: Add documentation for handling of renaming references
6243         * lib-xref.adb: Implement output of renaming reference.
6245         * checks.adb:
6246         (Determine_Range): Document local variables
6247         (Determine_Range): Make sure Hbound is initialized. It looks as though
6248          there could be a real problem here with an uninitialized reference
6249          to Hbound, but no actual example of failure has been found.
6251 2001-12-17  Laurent Pautet <pautet@gnat.com>
6253         * g-socket.ads:
6254         Fix comment of Shutdown_Socket and Close_Socket. These functions
6255         should not fail silently because if they are called twice, this
6256         probably means that there is a race condition in the user program.
6257         Anyway, this behaviour is consistent with the rest of this unit.
6258         When an error occurs, an exception is raised with the error message
6259         as exception message.
6261 2001-12-17  Robert Dewar <dewar@gnat.com>
6263         * frontend.adb: Move call to Check_Unused_Withs from Frontend, so
6264         that it happens before modification of Sloc values for -gnatD.
6266         * gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
6267         so that it happens before modification of Sloc values for -gnatD.
6269         * switch.adb: Minor reformatting
6271 2001-12-15  Richard Henderson  <rth@redhat.com>
6273         * sem_ch7.adb: Wrap comment.
6275 2001-12-16  Joseph S. Myers  <jsm28@cam.ac.uk>
6277         * 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
6278         5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
6279         5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
6280         5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
6281         5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
6282         7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
6283         a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
6284         a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
6285         cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
6286         exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
6287         exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
6288         g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
6289         gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
6290         make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
6291         par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
6292         repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
6293         s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
6294         s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
6295         s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
6296         s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
6297         sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
6298         sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
6299         sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
6300         sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
6301         spelling errors.
6303 2001-12-14  Vincent Celier <celier@gnat.com>
6305         * osint.adb(Create_Debug_File): When an object file is specified,
6306         put the .dg file in the same directory as the object file.
6308 2001-12-14  Robert Dewar <dewar@gnat.com>
6310         * osint.adb: Minor reformatting
6312         * lib-xref.adb (Output_Instantiation): New procedure to generate
6313         instantiation references.
6315         * lib-xref.ads: Add documentation of handling of generic references.
6317         * ali.adb (Read_Instantiation_Ref): New procedure to read
6318         instantiation references
6320         * ali.ads: Add spec for storing instantiation references
6322         * bindusg.adb: Minor reformatting
6324         * switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
6326         * usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
6328         * gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
6330         * csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
6332         * csets.ads:
6333         Fix header format
6334         Add 2001 to copyright date
6335         Add entry for Latin-5 (Cyrillic ISO-8859-5)
6337 2001-12-14  Matt Gingell <gingell@gnat.com>
6339         * adaint.c: mktemp is a macro on Lynx and can not be used as an
6340         expression.
6342 2001-12-14  Richard Kenner <kenner@gnat.com>
6344         * misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
6345         if operand is CONSTRUCTOR.
6347 2001-12-14  Ed Schonberg <schonber@gnat.com>
6349         * trans.c (tree_transform, case N_Assignment_Statement): Set lineno
6350         before emiting check on right-hand side, so that exception information
6351         is correct.
6353 2001-12-14  Richard Kenner <kenner@gnat.com>
6355         * utils.c (create_var_decl): Throw away initializing expression
6356         if just annotating types and non-constant.
6358 2001-12-14  Vincent Celier <celier@gnat.com>
6360         * prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
6361         Default_Ada_...
6363         * prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
6364         Remove functions.
6365         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
6367         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
6368         Remove functions.
6369         (Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
6371 2001-12-16  Joseph S. Myers  <jsm28@cam.ac.uk>
6373         * ChangeLog: Remove piece of diff output.
6375 2001-12-14  Geert Bosch <bosch@gnat.com>
6377         * config-lang.in: Update copyright notice
6379         * layout.adb: Remove commented out code.
6381         * mdllfile.ads: Update copyright notice. Fix header format.
6383         * sem_case.ads: Likewise.
6385         * sem_ch3.adb: Minor reformatting.
6387 2001-12-12  Geert Bosch <bosch@gnat.com>
6389         * freeze.ads: Update copyright date.
6391         * g-comlin.ads: Minor reformatting.
6393         * gnat-style.texi: Fix typo.
6395 2001-12-12  Geert Bosch <bosch@gnat.com>
6397         *  einfo.h: Regenerate.
6399 2001-12-12  Ed Schonberg <schonber@gnat.com>
6401         * sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
6402         on known node types, rather than untyped fields. Further cleanups.
6404 2001-12-12  Robert Dewar <dewar@gnat.com>
6406         * sem_ch12.adb:
6407         (Save_Entity_Descendant): Minor comment update.
6408         (Copy_Generic_Node): Deal with incorrect reference to Associated_Node
6409          of an N_Attribute_Reference node. As per note below, this does not
6410         eliminate need for Associated_Node in attribute ref nodes.
6411         (Associated_Node): Documentation explicitly mentions attribute
6412         reference nodes, since this field is used in such nodes.
6414         * sem_ch12.adb (Associated_Node): Minor documentation cleanup.
6416 2001-12-12  Robert Dewar <dewar@gnat.com>
6418         * s-stalib.adb: Add more comments on with statements being needed
6420         * par-ch12.adb: Minor reformatting
6422         * prj-dect.ads: Fix copyright header
6424         * s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
6425         inputs fit in 32 bits, but the result still overflows.
6427         * s-fatgen.ads: Minor comment improvement
6429 2001-12-12  Ed Schonberg <schonber@gnat.com>
6431         * sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
6432         formal derived type, look for an inherited component from the full
6433         view of the parent, if any.
6435 2001-12-12  Robert Dewar <dewar@gnat.com>
6437         * checks.ads (Apply_Alignment_Check): New procedure.
6439         * exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
6440         ensure that the alignment of objects with address clauses is
6441         appropriate, and raise PE if not.
6443         * exp_util.ads (Must_Be_Aligned): Removed, replaced by
6444         Exp_Pakd.Known_Aligned_Enough
6446         * mdllfile.ads: Minor reformatting
6448         * mlib-fil.ads: Minor reformatting
6450 2001-12-12  Ed Schonberg <schonber@gnat.com>
6452         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
6453         fix to any component reference if enclosing record has non-standard
6454         representation.
6456 2001-12-12  Vincent Celier <celier@gnat.com>
6458         * g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
6459         Iteration
6461 2001-12-12  Ed Schonberg <schonber@gnat.com>
6463         * freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
6464         sem_attr.
6466 2001-12-12  Robert Dewar <dewar@gnat.com>
6468         * impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
6470 2001-12-12  Emmanuel Briot <briot@gnat.com>
6472         * g-regexp.adb: Remove all debug code, since it isn't required anymore,
6473         and it adds dependencies to system.io.
6475 2001-12-12  Pascal Obry <obry@gnat.com>
6477         * g-dirope.adb (Expand_Path.Var): Correctly detect end of
6478         variable name.
6480 2001-12-11  Ed Schonberg <schonber@gnat.com>
6482         * sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
6483         that is the parent of other generics, the instance body replaces the
6484         instance node.  Retrieve the instance of the spec, which is the one
6485         that is visible in clients and within the body.
6487 2001-12-11  Vincent Celier <celier@gnat.com>
6489         * gnatmain.adb: Initial version.
6491         * gnatmain.ads: Initial version.
6493         * prj-attr.adb (Initialisation_Data): Add package Gnatstub.
6495         * snames.adb: Updated to match snames.ads.
6497         * snames.ads: Added Gnatstub.
6499 2001-12-11  Vincent Celier <celier@gnat.com>
6501         * prj-attr.adb (Initialization_Data): Change name from
6502         Initialisation_Data.
6504 2001-12-11  Emmanuel Briot <briot@gnat.com>
6506         * g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
6507         + and * applied to backslashed expressions like \r.
6509 2001-12-11  Vasiliy Fofanov <fofanov@gnat.com>
6511         * g-os_lib.ads: String_List type added, Argument_List type is now
6512         subtype of String_List.
6514 2001-12-11  Robert Dewar <dewar@gnat.com>
6516         * g-os_lib.ads: Change copyright to FSF
6517         Add comments for String_List type
6519 2001-12-11  Vincent Celier <celier@gnat.com>
6521         * g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
6522         string to the buffer).
6524 2001-12-11  Ed Schonberg <schonber@gnat.com>
6526         * freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
6527         sem_attr.
6529         * sem_attr.adb: Simplify previous fix for Address.
6530         (Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
6531         to avoid anomalies where the bound of the type appears to raise
6532         constraint error.
6534 2001-12-11  Robert Dewar <dewar@gnat.com>
6536         * lib-xref.adb (Output_Refs): Make sure pointers are always properly
6537         handled.
6539 2001-12-11  Ed Schonberg <schonber@gnat.com>
6541         * sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
6542         renamed unit before checking for recursive instantiations.
6544 2001-12-11  Emmanuel Briot <briot@gnat.com>
6546         * prj.ads: Add comments for some of the fields.
6548 2001-12-11  Robert Dewar <dewar@gnat.com>
6550         * lib-xref.adb (Output_Refs): Don't output type references outside
6551         the main unit if they are not otherwise referenced.
6553 2001-12-11  Ed Schonberg <schonber@gnat.com>
6555         * sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
6556         code and diagnose additional illegal uses
6558         * sem_util.adb (Is_Object_Reference): An indexed component is an
6559         object only if the prefix is.
6561 2001-12-11  Vincent Celier <celier@gnat.com>
6563         * g-diopit.adb: Initial version.
6565         * g-diopit.ads: Initial version.
6567         * g-dirope.adb:
6568         (Expand_Path): Avoid use of Unbounded_String
6569         (Find, Wildcard_Iterator): Moved to child package Iteration
6571         * Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
6573 2001-12-11  Robert Dewar <dewar@gnat.com>
6575         * sem_attr.adb: Minor reformatting
6577 2001-12-11  Ed Schonberg <schonber@gnat.com>
6579         * sem_ch3.adb: Clarify some ???.
6581 2001-12-11  Robert Dewar <dewar@gnat.com>
6583         * exp_util.adb (Must_Be_Aligned): Removed, replaced by
6584         Exp_Pakd.Known_Aligned_Enough
6586         * sem_ch13.adb (Check_Address_Alignment): Removed, extended
6587         version is moved to Exp_Ch13.
6589 2001-12-11  Robert Dewar <dewar@gnat.com>
6591         * einfo.ads: Minor reformatting
6593         * exp_ch5.adb: Add comment for previous.change
6595         * ali.adb: New interface for extended typeref stuff.
6597         * ali.ads: New interface for typeref stuff.
6599         * checks.adb (Apply_Alignment_Check): New procedure.
6601         * debug.adb: Add -gnatdM for modified ALI output
6603         * exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
6605         * lib-xref.adb: Extend generation of <..> notation to cover
6606         subtype/object types. Note that this is a complete rewrite,
6607         getting rid of the very nasty quadratic algorithm previously
6608         used for derived type output.
6610         * lib-xref.ads: Extend description of <..> notation to cover
6611         subtype/object types. Uses {..} for these other cases.
6612         Also use (..) for pointer types.
6614         * sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
6616         * exp_pakd.adb: Minor reformatting.  Note that prevous RH should say:
6617         (Known_Aligned_Enough): Replaces Must_Be_Aligned.
6619 2001-12-11  Vincent Celier <celier@gnat.com>
6621         * gnatcmd.adb:
6622         Changed /COMPILE_ONLY to /ACTIONS=COMPILE
6623         Changed /BIND_ONLY to /ACTIONS=BIND
6624         Changed /LINK_ONLY to /ACTIONS=LINK
6626 2001-12-11  Ed Schonberg  <schonber@gnat.com>
6628         * sem_ch8.adb (Find_Selected_Component): improved search for a
6629         candidate package in case of error.
6631         * sem_ch12.adb (Inline_Instance_Body): place head of use_clause
6632         chain back on scope stack before reinstalling use clauses.
6634         * exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
6635         is enabled, do not kill the code for the condition, to preserve
6636         warning.
6638 2001-12-11  Robert Dewar <dewar@gnat.com>
6640         * checks.adb (Insert_Valid_Check): Apply validity check to expression
6641         of conversion, not to result of conversion.
6643 2001-12-11  Ed Schonberg <schonber@gnat.com>
6645         * sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
6646         before freezing parent. If the declarations are mutually recursive,
6647         an access to the current record type may be frozen before the
6648         derivation is complete.
6650 2001-12-05  Vincent Celier <celier@gnat.com>
6652         * gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
6653         -c /COMPILE_ONLY, -l /LINK_ONLY
6655         * opt.ads:
6656         (Bind_Only): New Flag
6657         (Link_Only): New flag
6659         * switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
6660         and -l (Link_Only)
6662         * makeusg.adb: Add new switches -b and -l. Update Copyright notice.
6664         * make.adb:
6665         (Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
6666         (Gnatmake): Set the step flags. Only perform a step if the
6667         corresponding step flag is True.
6668         (Scan_Make_Arg): Reset the bind and link step flags when -u
6669         or -gnatc has been specified.
6671 2001-12-05  Ed Schonberg <schonber@gnat.com>
6673         * sem_eval.adb (Eval_Concatenation): If left operand is a null string,
6674         get bounds from right operand.
6676         * sem_eval.adb: Minor reformatting
6678         * exp_util.adb (Make_Literal_Range): use bound of literal rather
6679         than Index'First, its lower bound may be different from 1.
6681         * exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
6682         and C48009J
6684 2001-12-05  Vincent Celier <celier@gnat.com>
6686         * prj-nmsc.adb Minor reformatting
6688         * prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
6689         set and libraries are not supported.
6691 2001-12-05  Ed Schonberg <schonber@gnat.com>
6693         * sem_ch3.adb (Build_Derived_Private_Type): set Public status of
6694         private view explicitly, so the back-end can treat as a global
6695         when appropriate.
6697 2001-12-05  Ed Schonberg <schonber@gnat.com>
6699         * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
6700          unit, always replace instance node with new body, for ASIS use.
6702 2001-12-05  Vincent Celier <celier@gnat.com>
6704         * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
6705         libraries are not supported and both attributes Library_Name and
6706         Library_Dir are specified.
6708         * prj-proc.adb (Expression): Set location of Result to location of
6709         first term.
6711         * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
6712         (prj-nmsc is now importing MLib.Tgt)
6714         * prj-proc.adb: Put the change indicated above that was forgotten.
6716 2001-12-05  Robert Dewar <dewar@gnat.com>
6718         * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
6720 2001-12-05  Ed Schonberg <schonber@gnat.com>
6722         * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
6723         constraint, introduce explicit subtype declaration and derive from it.
6725         * sem_ch3.adb: Minor reformatting
6727 2001-12-05  Robert Dewar <dewar@gnat.com>
6729         * checks.adb (Determine_Range): Increase cache size for checks.
6730         Minor reformatting
6732         * exp_ch6.adb: Minor reformatting
6733         (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
6734         a parameter whose root type is System.Address, since treating such
6735         subprograms as pure in the code generator is almost surely a mistake
6736         that will lead to unexpected results.
6738         * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
6739         change handling of conversions.
6741         * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
6743 2001-12-05  Ed Schonberg <schonber@gnat.com>
6745         * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
6746         aggregate with static wrong size, attach generated Raise node to
6747         declaration.
6749 2001-12-05  Robert Dewar <dewar@gnat.com>
6751         * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
6752         Fixes compilation abandoned bomb in B24009B.
6754 2001-12-05  Ed Schonberg <schonber@gnat.com>
6756         * sem_ch12.adb:
6757         Document use of Associated_Node on Selected_Components.
6758         (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
6759         to clarify use of untyped descendant fields.
6761 2001-12-05  Robert Dewar <dewar@gnat.com>
6763         * prj-dect.ads: Add ??? comment
6764         Add 2001 to copyright notice (was not done in after all)
6766         * prj-part.adb: Minor reformatting. Reword one awkward error message.
6768         * prj.ads: Minor reformatting throughout, and add some ??? comments
6770         * snames.ads: Minor reformatting
6772 2001-12-05  Geert Bosch <bosch@gnat.com>
6774         * snames.adb: Autoupdate
6776 2001-12-05  Vincent Celier <celier@gnat.com>
6778         * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
6780         * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
6782         * prj-env.adb: Minor comment changes (modifying -> extends).
6784         * prj-nmsc.adb: Minor comment changes (modifying -> extends).
6786         * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
6787         Tok_Extends.
6789         * prj.adb (Initialize): Change Modifying to Extends.
6791         * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
6793         * prj.ads: Minor comment change (Modifying -> extending).
6795         * snames.ads: Change modifying to extends.
6797 2001-12-05  Robert Dewar <dewar@gnat.com>
6799         * sem_warn.adb: Remove stuff for conditionals, we are not going to
6800         do this after all.
6802         * sem_warn.ads: Remove stuff for conditionals, we are not going to
6803         do this after all.  Add 2001 to copyright notice
6805 2001-12-04  Geert Bosch <bosch@gnat.com>
6807         *  einfo.h, sinfo.h, treeprs.ads: Regenerate.
6809 2001-12-04  Robert Dewar <dewar@gnat.com>
6811         * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
6812         location if we already have errors. Stops some cases of cascaded
6813         errors.
6815         * errout.adb: Improve comment.
6817 2001-12-04  Robert Dewar <dewar@gnat.com>
6819         * sem_ch12.adb:
6820         (Analyze_Formal_Type_Definition): Defend against Error.
6821         (Analyze_Formal_Subprogram): Defend against Error.
6823         * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
6824         remove following semicolon if present. Removes cascaded error.
6826 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
6828         * bindgen.adb:
6829         (Gen_Exception_Table_Ada): Write "begin" and then return if Num
6830          exceptions equals 0.
6831         (Gen_Exception_Table_C): Return if Num exceptions equals 0.
6832         Fixes PIWG E tests (which have to be run with -gnatL).
6834 2001-12-04  Robert Dewar <dewar@gnat.com>
6836         * einfo.ads: Minor reformatting
6838 2001-12-04  Ed Schonberg <schonber@gnat.com>
6840         * einfo.ads: Block_Node points to the identifier of the block, not to
6841         the block node itself, to preserve the link when the block is
6842         rewritten, e.g. within an if-statement with a static condition.
6844         * inline.adb (Cleanup_Scopes): recover block statement from block
6845         entity using new meaning of Block_Node.
6847         * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
6848         identifier of block node, rather than to node itself.
6850 2001-12-04  Gary Dismukes <dismukes@gnat.com>
6852         * layout.adb:
6853         (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
6854         (Discrimify): Go back to setting the Etypes of the selected component
6855         because the Vname component does not exist at this point and will
6856         fail name resolution. Also set Analyzed.
6857         Remove with and use of Sem_Res.
6859 2001-12-04  Arnaud Charlet <charlet@gnat.com>
6861         * Makefile.in: (HIE_SOURCES): add s-fat*.
6863 2001-12-04  Robert Dewar <dewar@gnat.com>
6865         * sem_attr.adb:
6866         (Compile_Time_Known_Attribute): New procedure.
6867         (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
6868          proper range check.
6870 2001-12-04  Ed Schonberg <schonber@gnat.com>
6872         * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
6873         processing discriminants to diagnose illegal default values.
6875 2001-12-04  Ed Schonberg <schonber@gnat.com>
6877         * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
6878         access discriminant within a type extension that constrains its
6879         parent discriminants.
6881 2001-12-04  Ed Schonberg <schonber@gnat.com>
6883         * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
6884         is malformed, use instance of Any_Id to allow analysis to proceed.
6886         * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
6887         type definition is illegal.
6888         (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
6889         misplaced.
6891 2001-12-04  Ed Schonberg <schonber@gnat.com>
6893         * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
6894         constants.
6896 2001-12-04  Robert Dewar <dewar@gnat.com>
6898         * errout.adb: Minor reformatting
6900 2001-12-04  Robert Dewar <dewar@gnat.com>
6902         * exp_util.adb: Minor reformatting from last change
6904         * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
6905         which is a rewriting of an expression, traverse the original
6906         expression to remove warnings that may have been posted on it.
6908 2001-12-04  Ed Schonberg <schonber@gnat.com>
6910         * exp_util.adb (Must_Be_Aligned): Return false for a component of a
6911         record that has other packed components.
6913 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
6915         * adaint.c: Minor cleanups.
6917 2001-12-04  Douglass B. Rupp <rupp@gnat.com>
6919         * adaint.c: Do not use utime.h on vxworks.
6921 2001-12-04  Arnaud Charlet <charlet@gnat.com>
6923         * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
6924         more confusion than it solves.
6926 2001-12-04  Geert bosch <bosch@gnat.com>
6928         * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
6930 2001-12-04  Geert Bosch  <bosch@gnat.com>
6932         * Makefile.in (update-sources): New target.
6933         For use by gcc_release script.
6935 2001-12-04  Ed Schonberg <schonber@gnat.com>
6937         * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
6938         a configuration pragma, it is now legal wherever a pragma can appear.
6940 2001-12-04  Zack Weinberg  <zack@codesourcery.com>
6942         * Makefile.in: Don't set ALL.  Delete @cross_defines@,
6943         @cross_overrides@, @build_overrides@ stanzas.  INTERNAL_CFLAGS
6944         is now @CROSS@ -DIN_GCC; update comment.
6946 2001-12-04  Robert Dewar <dewar@gnat.com>
6948         * einfo.adb (Has_Pragma_Pure_Function): New flag.
6949         Fix problem that stopped ceinfo from working
6951         * einfo.ads (Has_Pragma_Pure_Function): New flag.
6953         * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
6955 2001-12-04  Douglas B. Rupp <rupp@gnat.com>
6957         * gnatchop.adb:
6958         (File_Time_Stamp): New procedure.
6959         (Preserve_Mode): New boolean.
6960         (Write_Unit): Pass time stamp.
6961         Implement -p switch (preserve time stamps).
6963         * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
6965         * gnatchop.adb: Do usage info for -p switch
6967         * adaint.h (__gnat_set_file_time_name): New function
6969         * adaint.c (__gnat_set_file_time_name): Implement
6971         * adaint.h: Fix typo
6973 2001-12-03  Robert Dewar <dewar@gnat.com>
6975         * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
6976         have Associated_Node.
6978 2001-12-03  Robert Dewar <dewar@gnat.com>
6980         * prj-proc.adb: Minor reformatting
6982         * make.adb: Minor reformatting
6984 2001-12-03  Geert Bosch <bosch@gnat.com>
6986         * make.adb: Minor reformatting.
6988 2001-12-03 Robert Dewar  <dewar@gnat.com>
6990         * sem_ch12.adb: Minor reformatting
6992 2001-12-03  Ed Schonberg <schonber@gnat.com>
6994         * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
6995         push Standard on the stack before analyzing the instance body,
6996         in order to have a clean visibility environment.
6998         * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
7000 2001-12-03  Ed Schonberg <schonber@gnat.com>
7002         * sem_ch12.adb (Instantiate_Package_Body): Protect against double
7003         instantiation of a body that contains an inlined body.
7005 2001-12-03  Ed Schonberg <schonber@gnat.com>
7007         * sem_ch12.adb:
7008         (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
7009         to prevent freezing within formal packages.
7010         (Freeze_Subprogram_Body): If body comes from another instance that
7011         appeared before its own body, place freeze node at end of current
7012         declarative part, to prevent a back-end crash.
7013         (Inline_Instance_Body): Handle properly a package instance within
7014         a subprogram instance that is a child unit.
7016 2001-12-01  Graham Stott  <grahams@redhat.com>
7018         * Makefile.in (misc.o): Add missing $(srcdir) prefix
7019         and add optabs.h dependency.
7021         * misc.c: Include optabs.h
7022         (gnat_tree_code_type): Make static and const.
7023         (gnat_tree_code_length): Likewise.
7024         (gnat_tree_code_name): Likewise.
7025         (update_setjmp_buf): Obtain operands mode from insn_data.
7027 2001-11-29  Richard Henderson  <rth@redhat.com>
7029         * init.c: Remove obsolete dwarf2 frame.h section.
7031 2001-11-29  Joseph S. Myers  <jsm28@cam.ac.uk>
7033         * Make-lang.in (ada.generated-manpages): New dummy target.
7035 2001-11-29  Ed Schonberg <schonber@gnat.com>
7037         * g-os_lib.adb (Add_To_Command): use explicit loop to move string
7038         into Command, an array conversion is illegal here. Uncovered by
7039         ACATS B460005.
7041 2001/11/28  Geert Bosch <bosch@gnat.com>
7043         * init.c: Minor whitespace changes.
7045 2001-11-28  Doug Rupp <rupp@gnat.com>
7047         * init.c: (__gnat_install_handler,VMS): Increase size of alternate
7048         signal stack.
7050 2001-11-28  Zack Weinberg  <zack@codesourcery.com>
7052         * misc.c (gnat_expand_constant): Move declaration above
7053         definition of lang_hooks.
7054         (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
7055         (gnat_init): lang_expand_constant no longer exists.
7057         (internal_error_function): Remove #ifdef HAVE_VPRINTF.  We
7058         always have vprintf.
7059         (gnat_init): Always call set_internal_error_function.
7061 2001-11-27  Andreas Jaeger  <aj@suse.de>
7063         * Makefile.in (stamp-tool_src_dir): Use symbolic link.
7065 2001-11-27  Laurent Guerby  <guerby@acm.org>
7067         * Makefile.in: Regenerate Ada dependencies.
7069 2001-11-26  Richard Henderson  <rth@redhat.com>
7071         * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
7072         gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
7073         gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
7075 2001-11-25  Laurent Guerby  <guerby@acm.org>
7077         * sysdep.c (rts_get_*): Fix style.
7079 2001-11-19  Laurent Guerby  <guerby@acm.org>
7081         * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
7082         since it is of no apparent use and cause warnings.
7084 2001-11-18  Neil Booth  <neil@daikokuya.demon.co.uk>
7086         * misc.c (gnat_decode_option, gnat_init_options): Make definitions
7087         static too.
7088         (gnat_init): Don't return NULL.
7089         (finish_parse): Remove.
7091 2001-11-17  Laurent Guerby  <guerby@acm.org>
7093         * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
7094         * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
7095         * io-aux.c: Provide K&R prototypes to all functions, reformat code.
7096         * lang-spec.h: Add missing struct field to silence warnings.
7097         * sysdep.c (rts_get_*): Provide K&R prototype.
7098         * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
7099         * traceback.c (Unlock_Task, Lock_Task): Likewise.
7100         * tracebak.c (__gnat_backtrace): Remove unused variable.
7101         * utils.c (end_subprog_body): Move to K&R style.
7103 Thu Nov 15 18:16:17 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
7105         * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
7107 2001-11-15  Neil Booth  <neil@daikokuya.demon.co.uk>
7109         * misc.c (gnat_init): Change prototype.  Include the
7110         functionality of the old init_parse and init_decl_processing.
7111         (gnat_init_decl_processing): New prototype.
7112         (init_parse): Remove.
7113         * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
7115 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
7117         * misc.c (gnat_print_decl, gnat_print_type): Renamed.
7118         (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
7119         (print_lang_statistics, lang_print_xnode, print_lang_identifier,
7120         set_yydebug): Remove.
7122 2001-11-09  Neil Booth  <neil@daikokuya.demon.co.uk>
7124         * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
7125         (struct lang_hooks): Constify.
7126         (language_string, lang_identify): Remove.
7127         * utils.c (init_decl_processing): Update.
7129 2001-11-06  Neil Booth  <neil@cat.daikokuya.demon.co.uk>
7131         * misc.c: Include langhooks-def.h.
7132         * Makefile.in: Update.
7134 2001-10-30  Robert Dewar <dewar@gnat.com>
7136         * style.adb:
7137         (Check_Identifier): Rewrite circuit to be compatible with use of letters
7138         in the upper half of ASCII.
7139         (Check_Identifier): Minor reformatting
7141 2001-10-30  Geert Bosch <bosch@gnat.com>
7143         * (Associated_Node, Set_Associated_Node): Do not check for
7144         Freeze_Entity.
7146 2001-10-30  Robert Dewar <dewar@gnat.com>
7148         * a-reatim.ads: Minor reformatting
7150 2001-10-30  Robert Dewar <dewar@gnat.com>
7152         * gnatdll.adb: Minor reformatting throughout. Many ??? added for
7153         undocumented declarations.
7155 2001-10-30  Pascal Obry <obry@gnat.com>
7157         * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
7158         to the binder and linker.
7159         Minor style fix.
7161         * mdll.ads: Fix layout.  Update copyright notice.
7163         * mdll.adb: Fix layout.  Update copyright notice.
7165 2001-10-30  Robert Dewar <dewar@gnat.com>
7167         * usage.adb: Minor fix to output for -gnaty.
7169 2001-10-30  Ed Schonberg <schonber@gnat.com>
7171         * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
7172         to accommodate all its possible values.
7174         * a-reatim.adb (Split): Special-case handling of Time_Span_First
7175         and of small absolute values of T.
7177 2001-10-30  Richard Kenner <kenner@gnat.com>
7179         * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
7180         set_mem_attributes since not needed and wrong if RESULT if a REG;
7181         fixes ACATS failures.
7183 2001-10-30  Geert Bosch <bosch@gnat.com>
7185         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
7186         s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
7188 2001-10-30  Robert Dewar <dewar@gnat.com>
7190         * bindusg.adb: Undocument -f switch.
7192         * gnatcmd.adb: Remove /FULL_ELABORATION.
7194         * opt.ads (Force_RM_Elaboration_Order): Document that this is
7195         obsolescent.
7197         * gnatbind.adb: Output new warning for use of obsolescent -f switch.
7199         * gnatbind.adb: Minor update of warning msg.
7201 2001-10-30  Vincent Celier <celier@gnat.com>
7203         * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
7204         for project file switches (-P (/PROJECT_FILE=),
7205          -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
7206         or MEDIUM or HIGH)
7208 2001-10-30  Geert Bosch <bosch@gnat.com>
7210         * decl.c: Minor whitespace fixes.
7212 2001-10-30  Richard Kenner <kenner@gnat.com>
7214         * utils2.c (build_allocator): Test for SIZE overflow in array case too
7216 2001-10-30  Geert Bosch <bosch@gnat.com>
7218         * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
7219         Found due to GCC 3.0 warning of using uninitialized value.
7221         * layout.adb:
7222         (Get_Max_Size): Use variant record for tracking value/expression.
7223          Makes logic clearer and prevents warnings for uninitialized variables.
7224         (Layout_Array_Type): Use variant record for tracking value/expression.
7225          Makes logic clearer and prevents warnings for uninitialized variables.
7227 2001-10-30  Robert Dewar <dewar@gnat.com>
7229         * lib.adb: Minor reformatting
7231         * s-taprop.ads: Minor reformatting
7233 2001-10-29  Laurent Guerby  <guerby@acm.org>
7235         * init.c:
7236         (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
7237         const.
7238         (_gnat_error_handler): Make MSG const.
7240 2001-10-29  Richard Kenner <kenner@gnat.com>
7242         * sysdep.c: Fix localtime_r problem on LynxOS.
7243         Also remove #elif to avoid warnings.
7245         * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
7246         used by this.
7248         * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
7250 2001-10-28  Joseph S. Myers  <jsm28@cam.ac.uk>
7252         * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
7253         exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
7254         g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
7255         g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
7256         layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
7257         s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
7258         sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
7259         sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
7260         sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
7261         types.ads, urealp.adb: Fix spelling errors.
7263 2001-10-27  Laurent Guerby <guerby@acm.org>
7265         * trans.c (gigi): Fix non determinism leading to bootstrap
7266         comparison failures for debugging information.
7268 2001-10-26  Florian Weimer  <fw@deneb.enyo.de>
7270         * gnat_rm.texi: Use @./@: where appropriate.
7272 2001-10-26  Robert Dewar <dewar@gnat.com>
7274         * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
7276 2001-10-26  Richard Kenner <kenner@gnat.com>
7278         * gmem.c (__gnat_gmem_read_next): Properly check for EOF
7280 2001-10-26  Richard Kenner <kenner@gnat.com>
7282         * decl.c (validate_size): Modify message for bad size to avoid
7283         implication that compiler is modifying the size.
7285 2001-10-26  Robert Dewar <dewar@gnat.com>
7287         * prj-util.adb: Minor reformatting. Fix bad header format.
7289 2001-10-26  Robert Dewar <dewar@gnat.com>
7291         * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
7293         * sinfo.ads: Clarify use of Associated_Node (documentation only).
7295         * sem_ch12.adb: Change Node4 to Associated_Node. Change
7296         Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
7297         much more narrowly in places where needed. These are cleanups.
7299 2001-10-26  Joel Brobecker <brobecke@gnat.com>
7301         * 5zosinte.ads (null_pthread): new constant.
7303         * 5ztaprop.adb:
7304         (Initialize_TCB): Initialize thread ID to null, to be able to verify
7305          later that this field has been set.
7306         (Finalize_TCB): ditto.
7307         (Suspend_Task): Verify that the thread ID is not null before using it.
7308         (Resume_Task): ditto.
7310         * s-tasdeb.adb:
7311         (Resume_All_Tasks): Lock the tasks list before using it.
7312         (Suspend_All_Tasks): ditto.
7314 2001-10-26  Richard Kenner <kenner@gnat.com>
7316         * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
7317         Make constant variant of designated type for Is_Access_Constant.
7318         Call update_pointer_to with main variant.
7320         * trans.c (process_freeze_entity, process_type):
7321         Call update_pointer_to on main variant.
7323         * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
7324         If main variant, update all other variants.
7326         * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
7327         TREE_STATIC.
7329 2001-10-26  Robert Dewar <dewar@gnat.com>
7331         * prj-util.adb: Minor reformatting
7333 2001-10-26  Robert Dewar <dewar@gnat.com>
7335         * prj-util.adb: Minor reformatting
7337 2001-10-26  Robert Dewar <dewar@gnat.com>
7339         * prj-attr.adb: Minor reformatting throughout
7341 2001-10-26  Robert Dewar <dewar@gnat.com>
7343         * prj-attr.ads: Minor reformatting
7344         Add ??? comment (this whole spec has almost no comments)
7346 2001-10-26  Vincent Celier <celier@gnat.com>
7348         * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
7349         ("//") that precede the drive letter on Interix.
7351 2001-10-26  Geert Bosch <bosch@gnat.com>
7353         * gnat_rm.texi: Add GNAT Reference Manual.
7355 2001-10-25  Robert Dewar <dewar@gnat.com>
7357         * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
7358         is Error. Similar change for other renaming cases.
7360 2001-10-25  Robert Dewar <dewar@gnat.com>
7362         * s-atacco.ads: Add pragma Inline_Always for functions.
7363         Fix header format. Add copyright 2001
7365 2001-10-25  Ed Schonberg <schonber@gnat.com>
7367         * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
7368         return Error rather than Empty so that analysis can proceed.
7370 2001-10-25  Ed Schonberg <schonber@gnat.com>
7372         * sem_util.adb (Enter_Name): better handling of cascaded error
7373         messages when a unit appears in its own context.
7375 2001-10-25  Ed Schonberg <schonber@gnat.com>
7377         * sem_util.adb (Defining_Entity): in case of error, attach created
7378         entity to specification, so that semantic analysis can proceed.
7380 2001-10-25  Robert Dewar <dewar@gnat.com>
7382         * sem_util.adb
7383         (Defining_Entity): Deal with Error.
7384         (Process_End_Label): Deal with bad end label for.
7386 2001-10-25  Ed Schonberg <schonber@gnat.com>
7388         * sem_elab.adb (Check_A_Call): refine message when call is in an
7389         instance but callee is not declared in the generic unit.
7391 2001-10-25  Ed Schonberg <schonber@gnat.com>
7393         * sem_elab.adb (Check_A_Call): check for renaming before finding the
7394         enclosing unit, which may already be different from the calling unit.
7396 2001-10-25  Geert Bosch <bosch@gnat.com>
7398         * 4gintnam.ads: fix header format.
7400 2001-10-25  Ed Schonberg <schonber@gnat.com>
7402         * sem_res.adb (Resolve_Call): if the call is actually an indexing
7403         operation on the result of a parameterless call, perform elaboration
7404         check after the node has been properly rewritten.
7406         * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
7407         inlined within the generic tree, the defining identifier is not a
7408         compilation_unit.
7410 2001-10-25  Ed Schonberg <schonber@gnat.com>
7412         * sem_res.adb (Resolve): special-case resolution of Null in an
7413          instance or an inlined body to avoid view conflicts.
7415         * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
7416          compatibility by retrieving the access type of the generic copy.
7418 2001-10-25  Robert Dewar <dewar@gnat.com>
7420         * sem_ch3.adb:
7421         (Analyze_Number_Declaration): Handle error expression.
7422         (Signed_Integer_Type_Declaration): Handle error bound.
7423         (Analyze_Subtype_Indication): Handle error range.
7425         * sem_util.adb (Get_Index_Bounds): Check for Error.
7427 2001-10-25  Robert Dewar <dewar@gnat.com>
7429         * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
7430         in no run time mode.
7432 2001-10-25  Pascal Obry <obry@gnat.com>
7434         * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
7435         mode case for ALLOC case.
7437         * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
7438         all platforms. Improvement of last change.
7440 2001-10-25  Robert Dewar <dewar@gnat.com>
7442         * exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
7444 2001-10-25  Geert Bosch  <bosch@gnat.com>
7446         * osint.adb (Is_Relative): Remove duplicate.
7448 2001-10-25  Pascal Obry <obry@gnat.com>
7450         * osint.adb (Read_Default_Search_Dirs): correctly detect relative
7451         pathnames in UNIX and DOS style with drive letter.
7452         (Is_Relative): new routine.
7454         * osint.adb: Minor reformatting
7456         * osint.adb (Is_Relative): implementation using
7457         GNAT.OS_Lib.Is_Absolute_Path. Better fix.
7459 2001-10-25  Pascal Obry <obry@gnat.com>
7461         * g-dirope.adb (Basename): correctly compute offset between the
7462         original Path and the translated one.
7464         * g-dirope.adb: (Base_Name): add some comments.
7466 2001-10-25  Robert Dewar <dewar@gnat.com>
7468         * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
7469         in HIE mode, avoids compilation abandoned message
7471         * exp_imgv.adb: Correct typo in previous change
7473         * exp_imgv.adb: Correct typo in previous change (not my day!)
7475 2001-10-25  Robert Dewar <dewar@gnat.com>
7477         * s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
7479 2001-10-25  Pascal Obry <obry@gnat.com>
7481         * g-awk.ads: Move all pragma inlines next to the routine
7482          declarations. This is more uniform with other GNAT spec.
7484 2001-10-22  Geert Bosch  <bosch@gnat.com>
7486         * Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
7488 2001-10-19  Geert Bosch  <bosch@gnat.com>
7490         * Makefile.in (tools, gnattools): Remove gnatmem.
7492 2001-10-17  Richard Henderson  <rth@redhat.com>
7494         * Makefile.in (misc.o): Depend on langhooks.h.
7495         * misc.c: Include it.
7496         (LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
7497         (LANG_HOOKS_DECODE_OPTION): New.
7498         (lang_hooks): Use LANG_HOOKS_INITIALIZER.
7500 2001-10-16  Florian Weimer  <fw@deneb.enyo.de>
7502         * trans.c (tree_transform): Adjust to recent change in
7503         expand_asm_operands to implement named asm operands.
7505 2001-10-11  Ed Schonberg  <schonber@gnat.com>
7507         * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
7508         renaming of discriminant for mutable record type.
7510 2001-10-11  Robert Dewar  <dewar@gnat.com>
7512         * validsw.adb: Properly save -gnatVn status.
7514 2001-10-11  Robert Dewar <dewar@gnat.com>
7516         * usage.adb: Add lines for V switch.
7518         * gnatcmd.adb (COMPILE): Revise translations for -gnatV
7519         (/VALIDITY_CHECKING).
7521 2001-10-11  Ed Schonberg <schonber@gnat.com>
7523         * sem_type.adb (Add_One_Interp): an operator for a type declared in
7524         an extension of System is known to be visible.
7526 2001-10-11  Ed Schonberg <schonber@gnat.com>
7528         * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
7529         properly. Fixes regression on ACATS C34005G.
7531 2001-10-11  Robert Dewar <dewar@gnat.com>
7533         * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
7534         loop in generic instance, since this is likely not very useful.
7536 2001-10-11  Robert Dewar <dewar@gnat.com>
7538         * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
7539         the error message for high integrity mode.
7541         * rtsfind.adb (RTE): Give message if we try to find an entity that
7542         is not available in high integrity mode.
7544         * rtsfind.ads:
7545         (OK_To_Use_In_HIE_Mode): New array.
7546         (RTE): May return Empty in high integrity mode.
7548         * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
7549         OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
7551         * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
7552         unit if not inlined always and in no runtime mode. Fixes problem
7553         caused by new Rtsfind changes.
7555         * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
7556         body is deleted.
7558         * rtsfind.adb (RTE): Make sure we do not try to load unit after
7559         giving message for entity not available in high integrity mode.
7561 2001-10-11  Pascal Obry <obry@gnat.com>
7563         * impunit.adb: Add GNAT.CRC32.
7565 2001-10-11  Ed Schonberg <schonber@gnat.com>
7567         * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
7568         properly the case where one universal operand in a non-static
7569         exponentiation of a real literal.
7571 2001-10-11  Ed Schonberg <schonber@gnat.com>
7573         * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
7574         clause, return the gobal finalization list, for lack of anthing else.
7576 2001-10-11  Ed Schonberg <schonber@gnat.com>
7578         * exp_ch7.adb (Make_Transient_Block): if statement is within
7579         exception handler, always use new transient scope to place Clean
7580         procedure.
7582 2001-10-11  Pascal Obry <obry@gnat.com>
7584         * Makefile.in:
7585         (GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
7586         (GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
7587         (GNATLS_RTL_OBJS): add g-crc32.o
7588         (GNATMAKE_RTL_OBJS): add g-crc32.o
7590         * ali-util.adb:
7591         (CRC_Match): new function.
7592         (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
7593         instead of the previous simple checksum algorithm.
7594         (Time_Stamp_Mismatch): use CRC_Match for comparison.
7595         (Set_Source_Table): idem.
7597         * ali-util.ads:
7598         (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
7599         instead of simple checksum.
7600         (CRC_Match): new function.
7601         (CRC_Error): new constant.
7603         * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
7604         a CRC now and not a simple checksum. A CRC uses lower-case hex
7605         letters, fixes ambiguity in parsing.
7607         * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
7608         is what this variable will store.
7610         * bcheck.adb: Change reference to chechsum in comments by CRC.
7611         (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
7612         rename All_Checksum_Match to All_CRC_Match. Change due to API
7613         renaming since now GNAT does not use a simple checksum but a
7614         CRC using GNAT.CRC32.
7616         * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
7617         now and not anymore a simple checksum.
7619         * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
7620         places.
7622         * lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
7624         * scans.adb:
7625         (Restore_Scan_State): rename Checksum to CRC.
7626         (Save_Scan_State): idem.
7628         * scans.ads:
7629         With GNAT.CRC32.
7630         (Checksum): rename to CRC.
7631         (Saved_Scan_State): Save_Checksum field renamed to Save_CRC
7633         * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
7634         GNAT.CRC32).  Update copyright notice.
7636         * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
7637         GNAT.CRC32).  Update copyright notice.
7639         * scn.adb:
7640         (Accumulate_Checksum): removed.
7641         (Update): new procedure. Add a wide-character into the CRC.
7643         * sinput-l.adb:
7644         (Complete_Source_File_Entry): use CRC32 instead of simple checksum.
7645         (Load_File): fix initialization of S (change Source_Checksum to
7646         Source_CRC)
7648         * sinput-p.adb (Load_Project_File): rename Source_Checksum to
7649         Source_CRC in S initialization.
7651         * sinput.adb (Source_Checksum): renamed to Source_CRC.
7653         * sinput.ads (Source_Checksum): renamed to Source_CRC.
7654         Update comments for the CRC.
7656         * types.adb (Hex): Use lowercase for the letter part.
7658         * types.ads (Get_Hex_String): Returns the hexadecimal representation
7659         for a word. This is currently used only for CRC. In previous version,
7660         the checksum was using a representation with all letter being
7661         upper-case. With the new implementation (using CRC) we do not remove
7662         the 32th bit of the CRC, so we can have an upper-case starting letter
7663         in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
7664         It is ambigous since the CRC was optional and could be followed by
7665         options like EB, EE. So now this routines uses lower-case letter for
7666         the hexadecimal representation. Strange enough only lower case letters
7667         where checked in Scan_ALI (even if this was not a possible case).
7669         * gnatvsn.ads (Library_Version): changed to 3.15a.
7671         * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
7672         for the compiler.
7674         * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
7675         for the compiler.
7677         * ali-util.adb: Redo previous change to avoid using word CRC everywhere
7678         Add 2001 to copyright notice
7679         (Accumulate_Checksum): Modify to use System.CRC32.
7681         * ali-util.ads: Redo changes of previous revision to continue to use
7682         the word Checksum. Add 2001 to copyright notice.
7684         * ali.adb: Undo some of previous changes, not needed.
7685         Keep the change for lower case letters in the checksum.
7687         * ali.ads: Undo previous change not needed.
7689         * bcheck.adb: Undo most of previous change, not needed.
7690         But do use Checksums_Match for checksum comparison.
7692         * gnatls.adb: Undo most of previous change, not needed.
7693         But do use Checksums_Match for comparing checksums.
7695         * lib-load.adb: Undo previous change, not needed.
7697         * lib-writ.adb: Undo previous change, not needed.
7699         * lib-writ.ads: Document that checksums use lower case,
7700         not upper case letters.
7702         * scans.adb: Undo previous change, not needed
7704         * scans.ads: Undo previous change, not needed.
7706         * scn-nlit.adb: Undo previous changes, not needed.
7708         * scn-slit.adb: Undo previous change, not needed.  Fix header format.
7710         * scn.adb:
7711         (Accumulate_Checksum): Use System.CRC32.
7712         (Initialize_Checksum): New procedure.
7713         Remove other changes of previous revision.
7715         * sinput-p.adb: Undo previous change, not needed.
7717         * sinput.adb: Undo previous change, not needed.
7719         * sinput-l.adb: Undo previous change, not needed.
7721         * sinput.ads: Undo previous change, not needed.  Keep only comment
7722         on new checksum algorithm
7724         * Makefile.in: Add s-crc32 as needed, remove g-crc32.
7725         Also remove a-tags and a-stream from GNAT sources.
7727         * ali.adb (Scan_ALI): fix typo introduce in latest check-in.
7729         * Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
7731 2001-10-11  Geert Bosch  <bosch@gnat.com>
7733         * einfo.h: Regenerate.
7735         * nmake.ads: Regenerate.
7737         * nmake.adb: Regenerate.
7739         * sinfo.h: Regenerate.
7741         * treeprs.adb: Regenerate.
7743 2001-10-10  Geert Bosch  <bosch@gnat.com>
7745         * gnat-style.texi: New file describing coding guidelines for Ada.
7747 2001-10-10  Ed Schonberg <schonber@gnat.com>
7749         * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
7750         is Flag174.
7752 2001-10-10  Geert Bosch  <bosch@gnat.com>
7754         * snames.ads: Add new names for project facility.
7756         * snames.adb: Update to reflect snames.ads changes.
7758         * snames.h: Update to reflect snames.ads changes.
7760 2001-10-10  Vincent Celier <celier@gnat.com>
7762         * make.adb:
7763         (Add_Switches): reflect the changes for the switches attributes
7764         Default_Switches indexed by the programming language,
7765         Switches indexed by the file name.
7766         (Collect_Arguments_And_Compile): Idem.
7767         Reflect the attribute name changes.
7769         * prj-attr.adb:
7770         (Initialisation_Data): Change the names of some packages and
7771         attributes.
7772         (Initialize): process case insensitive associative arrays.
7774         * prj-attr.ads:
7775         (Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
7777         * prj-dect.adb:
7778         (Parse_Attribute_Declaration): For case insensitive associative
7779          arrays, set the index string to lower case.
7781         * prj-env.adb:
7782         Reflect the changes of the project attributes.
7784         * prj-nmsc.adb:
7785         Replace Check_Naming_Scheme by Ada_Check and
7786         Language_Independent_Check.
7788         * prj-nmsc.ads:
7789         Replaced Check_Naming_Scheme by 2 procedures:
7790         Ada_Check and Language_Independent_Check.
7792         * prj-proc.adb:
7793         (Process_Declarative_Items): For case-insensitive associative
7794         arrays, set the index string to lower case.
7795         (Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
7796         Prj.Nmsc.Check_Naming_Scheme.
7798         * prj-tree.adb:
7799         (Case_Insensitive): New function
7800         (Set_Case_Insensitive): New procedure
7802         * prj-tree.ads:
7803         (Case_Insensitive): New function
7804         (Set_Case_Insensitive): New procedure
7805         (Project_Node_Record): New flag Case_Insensitive.
7807         * prj-util.adb:
7808         (Value_Of): new function to get the string value of a single
7809         string variable or attribute.
7811         * prj-util.ads:
7812         (Value_Of): new function to get the string value of a single
7813         string variable or attribute.
7815         * prj.adb:
7816         (Ada_Default_Spec_Suffix): New function
7817         (Ada_Default_Impl_Suffix): New function
7818         Change definitions of several constants to reflect
7819         new components of record types.
7821         * prj.ads:
7822         (Naming_Data): Change several components to reflect new
7823         elements of naming schemes.
7824         (Project_Data): New flags Sources_Present and
7825         Language_Independent_Checked.
7826         (Ada_Default_Spec_Suffix): New function.
7827         (Ada_Default_Impl_Suffix): New function.
7829         * snames.ads:
7830         Modification of predefined names for project manager: added
7831         Implementation, Specification_Exceptions, Implementation_Exceptions,
7832         Specification_Suffix, Implementation_Suffix, Separate_Suffix,
7833         Default_Switches, _Languages, Builder, Cross_Reference,
7834         Finder. Removed Body_Part, Specification_Append, Body_Append,
7835         Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
7836         Gnatlink.
7838         * prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
7839         Add comments.
7841         * prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
7842         not that it is Nil_Variable_Value.
7844         * prj.ads: Add ??? for uncommented declarations
7846 2001-10-10  Ed Schonberg <schonber@gnat.com>
7848         * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
7849         constant, do not indicate possible modification, so that gigi can
7850         treat it as a bona fide constant.
7852 2001-10-10  Robert Dewar <dewar@gnat.com>
7854         * sem_prag.adb: Add processing for pragma External.
7856         * snames.ads: Add entry for pragma External.
7858         * par-prag.adb: Add pragma External.
7860         * snames.adb: Updated to match snames.ads.
7862 2001-10-10  Ed Schonberg <schonber@gnat.com>
7864         * exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
7865         a dynamic task if the allocator appears in an indexed assignment
7866         or selected component assignment.
7868         * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
7869         For a dynamic task in an assignment statement, use target of
7870         assignment to generate meaningful name.
7872 2001-10-10  Ed Schonberg <schonber@gnat.com>
7874         * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
7875         a generic package.
7877         * einfo.ads: Body_Entity is also defined for generic package.
7878         Documentation change only
7880         * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
7881         others_choice for a discriminated component initialization,
7882         convert discriminant references into the corresponding discriminals.
7884         * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
7885         only if original type is private and expression has to be wrapped
7886         in a conversion.
7888         * checks.adb:
7889         (Apply_Constraint_Check): Do not perform length check
7890         if expression is an aggregate with only an others_choice.
7891         (Length_N_Cond): two references to the same in_parameter
7892         (typically the discriminal in an init_proc) denote the same value.
7893         Two useful optimization uncovered by bugfixes above.
7895 2001-10-10  Robert Dewar <dewar@gnat.com>
7897         * xeinfo.adb: Change int to char in translation of enumeration types.
7898         This fixes a problem in the C representation of component alignment.
7899         Add 2001 to copyright notice
7901 2001-10-10  Richard Kenner <kenner@gnat.com>
7903         * decl.c: (validate_size): Do check size of object of integral type
7904         if it is a packed array type.
7906 2001-10-10  Richard Kenner <kenner@gnat.com>
7908         * decl.c: (gnat_to_gnu_entity, case object): Also materialize
7909         VAR_DECL for constant if not Is_Public but -O0.
7911 2001-10-10  Richard Kenner  <kenner@gnat.com>
7913         * misc.c (struct lang_hooks): Add new initializer to match GCC change.
7915 2001-10-10  Geert Bosch  <bosch@gnat.com>
7917         * xnmake.adb (XNmake): Fix handling of -s/-b options.  No longer
7918         use '/' as switch character, allowing for absolute file names.
7920 2001-10-09  Joseph S. Myers  <jsm28@cam.ac.uk>
7922         * 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
7923         FSF address.
7925 2001-10-08  Geert Bosch  <bosch@gnat.com>
7927         * Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
7928         Automatically build utilities when files need to be regenerated.
7930 2001-10-08  Geert Bosch  <bosch@gnat.com>
7932         * xsnames.adb: New utility for updating snames.ads and snames.adb
7934 2001-10-08  Zack Weinberg  <zack@codesourcery.com>
7936         * Make-lang.in (ADAFLAGS): Add -W -Wall.
7937         (ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
7938         (gnat1): Also depend on attribs.o.
7939         (gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
7940         * Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
7941         (ADAC): Set to @ADAC@ in stage1, $(CC) later.
7942         (ADAFLAGS): Add -W -Wall.
7943         (ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
7944         take out CFLAGS.
7946         (.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
7947         s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
7948         s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
7949         Use $(ADAC), not $(CC), as compilation command.
7951         (gnattools): Depend directly on tools to build, don't use
7952         recursive make.
7953         (gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
7955         * einfo.h, sinfo.h: New files (autogenerated).
7957 2001-10-08  Richard Henderson  <rth@redhat.com>
7959         * comperr.adb (Abort_In_Progress): New.
7960         (Compiler_Abort): Use it to prevent recursion.
7962 2001-10-08  Robert Dewar <dewar@gnat.com>
7964         * atree.adb: Set Error_Posted in Error node, helps error recovery.
7966         * par-endh.adb (Output_End_Expected): We should also not test
7967         Error_Posted on the Error node, since now it is always set.
7969         * cstand.adb (Create_Standard): Set Etype of Error to Any_Type
7970         to help error recovery. Part of general work on 9407-004.
7972         * par.adb: Add ??? for misuse of error
7974         * sem_res.adb:
7975         (Resolve): Defend against Error, fixes 9407-003.
7976         (Resolve_Discrete_Subtype_Indication): Defend against Error.
7978         * sinfo.ads (N_Error): Now has Etype field (which will be set
7979         to Any_Type to help error recovery).
7981 2001-10-08  Richard Kenner (kenner@gnat.com)
7983         * misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
7984         Consistently set MEM attributes from expression; fixes
7985         bootstrap failure on x86.
7987 2001-10-08  Geert Bosch  (bosch@gnat.com)
7989         * 5oosinte.adb: Add 2001 to copyright notice.
7991 2001-10-08  Geert Bosch  (bosch@gnat.com)
7993         * ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
7995         * csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
7997 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
7999         * 5oosinte.adb: Fix spelling error of "separate" as "seperate".
8001 2001-10-05  Geert Bosch  (bosch@gnat.com)
8003         * adaint.h: Small formatting fix.
8005 2001-10-04  Geert Bosch  <bosch@gnat.com>
8007         * sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
8008         Arg is int, not FILE *, in dummy version of functions.
8010         * adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
8011         Arg is int, not FILE *.
8013 2001-10-04  Geert Bosch  <bosch@gnat.com>
8015         * 3lsoccon.ads: Added file, missed with initial check ins.
8017         * 4lintnam.ads: Fix header format.
8018         Change Linux to GNU/Linux.
8020         * 5iosinte.adb: Change Linux to GNU/Linux.
8022         * 5iosinte.ads: Change Linux to GNU/Linux.
8024         * 5itaprop.adb: Change Linux to GNU/Linux.
8026         * 5itaspri.ads: Change Linux to GNU/Linux.
8027         Update copyright notice.
8029         * 5lintman.adb: Change Linux to GNU/Linux.
8031         * 5lml-tgt.adb: Change Linux to GNU/Linux.
8033         * 5losinte.ads: Change Linux to GNU/Linux.
8035         * 5lsystem.ads: Change Linux to GNU/Linux.
8037         * 5qosinte.adb: Change Linux to GNU/Linux.
8039         * 5qosinte.ads: Change Linux to GNU/Linux.
8041         * 5qparame.ads: Change Linux to GNU/Linux.
8043         * 5qtaprop.adb: Change Linux to GNU/Linux.
8045         * 5qtaspri.ads: Change Linux to GNU/Linux.
8046         Add 2001 to copyright notice.
8048         * 5vintman.ads: Change Linux to GNU/Linux.
8049         Fix header format.  Add 2001 to copyright notice.
8051         * g-soccon.ads: Change Linux to GNU/Linux.
8053         * g-trasym.ads: Change Linux to GNU/Linux.
8054         Add 2001 to copyright notice.
8056         * memtrack.adb: Change Linux to GNU/Linux.
8058         * s-intman.ads: Change Linux to GNU/Linux.
8059         Add 2001 to copyright notice.  Fix header format.
8061         * s-stache.adb: Change Linux to GNU/Linux.
8063         * adaint.c: Change Linux to GNU/Linux.
8065         * cio.c: Change Linux to GNU/Linux.
8067         * cstreams.c: Change Linux to GNU/Linux.
8069         * init.c: Change Linux to GNU/Linux.
8071         * gmem.c: Change Linux to GNU/Linux.
8073         * tracebak.c: Change Linux to GNU/Linux.
8076 2001-10-02  Geert Bosch  <bosch@gnat.com>
8078         * misc.c (insert_default_attributes): Add dummy version.