+To: gcc-patches@gcc.gnu.org
+Subject: [Ada] Reflect 2001-10-22 changes
+
+2001-12-05 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
+ unit, always replace instance node with new body, for ASIS use.
+
+2001-12-05 Vincent Celier <celier@gnat.com>
+
+ * prj-nmsc.adb (Language_Independent_Check): Issue a warning if
+ libraries are not supported and both attributes Library_Name and
+ Library_Dir are specified.
+
+ * prj-proc.adb (Expression): Set location of Result to location of
+ first term.
+
+ * Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
+ (prj-nmsc is now importing MLib.Tgt)
+
+ * prj-proc.adb: Put the change indicated above that was forgotten.
+
+*** sem_ch12.adb 2001/10/14 14:08:26 1.790
+--- sem_ch12.adb 2001/10/22 17:38:58 1.791
+***************
+*** 2550,2566 ****
+
+ Set_Instance_Spec (N, Act_Decl);
+
+! -- Case of not a compilation unit
+
+ if Nkind (Parent (N)) /= N_Compilation_Unit then
+ Mark_Rewrite_Insertion (Act_Decl);
+ Insert_Before (N, Act_Decl);
+ Analyze (Act_Decl);
+-
+- -- Case of compilation unit that is generic instantiation
+
+! -- Place declaration on current node so context is complete
+! -- for analysis (including nested instantiations).
+
+ else
+ if Cunit_Entity (Current_Sem_Unit) = Defining_Entity (N) then
+--- 2550,2570 ----
+
+ Set_Instance_Spec (N, Act_Decl);
+
+! -- If not a compilation unit, insert the package declaration
+! -- after the instantiation node.
+
+ if Nkind (Parent (N)) /= N_Compilation_Unit then
+ Mark_Rewrite_Insertion (Act_Decl);
+ Insert_Before (N, Act_Decl);
+ Analyze (Act_Decl);
+
+! -- For an instantiation that is a compilation unit, place
+! -- declaration on current node so context is complete
+! -- for analysis (including nested instantiations). It this
+! -- is the main unit, the declaration eventually replaces the
+! -- instantiation node. If the instance body is later created, it
+! -- replaces the instance node, and the declation is attached to
+! -- it (see Build_Instance_Compilation_Unit_Nodes).
+
+ else
+ if Cunit_Entity (Current_Sem_Unit) = Defining_Entity (N) then
+***************
+*** 2602,2608 ****
+ First_Private_Entity (Act_Decl_Id));
+
+ if Nkind (Parent (N)) = N_Compilation_Unit
+! and then not Needs_Body
+ then
+ Rewrite (N, Act_Decl);
+ end if;
+--- 2606,2612 ----
+ First_Private_Entity (Act_Decl_Id));
+
+ if Nkind (Parent (N)) = N_Compilation_Unit
+! and then not Needs_Body
+ then
+ Rewrite (N, Act_Decl);
+ end if;
+***************
+*** 3321,3326 ****
+--- 3325,3337 ----
+ Set_Library_Unit (Decl_Cunit, Body_Cunit);
+ Set_Library_Unit (Body_Cunit, Decl_Cunit);
+
++ -- If the instance is not the main unit, its context, categorization,
++ -- and elaboration entity are not relevant to the compilation.
++
++ if Parent (N) /= Cunit (Main_Unit) then
++ return;
++ end if;
++
+ -- The context clause items on the instantiation, which are now
+ -- attached to the body compilation unit (since the body overwrote
+ -- the original instantiation node), semantically belong on the spec,
+***************
+*** 6581,6590 ****
+
+ if Nkind (Parent (Inst_Node)) = N_Compilation_Unit then
+
+ if Parent (Inst_Node) = Cunit (Main_Unit) then
+- Build_Instance_Compilation_Unit_Nodes
+- (Inst_Node, Act_Body, Act_Decl);
+- Analyze (Inst_Node);
+
+ -- If the instance is a child unit itself, then set the
+ -- scope of the expanded body to be the parent of the
+--- 6592,6605 ----
+
+ if Nkind (Parent (Inst_Node)) = N_Compilation_Unit then
+
++ -- Replace instance node with body of instance, and create
++ -- new node for corresponding instance declaration.
++
++ Build_Instance_Compilation_Unit_Nodes
++ (Inst_Node, Act_Body, Act_Decl);
++ Analyze (Inst_Node);
++
+ if Parent (Inst_Node) = Cunit (Main_Unit) then
+
+ -- If the instance is a child unit itself, then set the
+ -- scope of the expanded body to be the parent of the
+***************
+*** 6597,6606 ****
+ Set_Scope
+ (Defining_Entity (Inst_Node), Scope (Act_Decl_Id));
+ end if;
+-
+- else
+- Set_Parent (Act_Body, Parent (Inst_Node));
+- Analyze (Act_Body);
+ end if;
+
+ -- Case where instantiation is not a library unit
+--- 6612,6617 ----
+
+*** prj-nmsc.adb 2001/10/20 04:14:18 1.29
+--- prj-nmsc.adb 2001/10/22 21:55:07 1.30
+***************
+*** 34,39 ****
+--- 34,40 ----
+ with GNAT.Case_Util; use GNAT.Case_Util;
+ with GNAT.Directory_Operations; use GNAT.Directory_Operations;
+ with GNAT.OS_Lib; use GNAT.OS_Lib;
++ with MLib.Tgt;
+ with Namet; use Namet;
+ with Osint; use Osint;
+ with Output; use Output;
+***************
+*** 1948,2008 ****
+ Data.Library_Name /= No_Name;
+
+ if Data.Library then
+- if Current_Verbosity = High then
+- Write_Line ("This is a library project file");
+- end if;
+
+! pragma Assert (Lib_Version.Kind = Single);
+
+! if Lib_Version.Value = Empty_String then
+ if Current_Verbosity = High then
+! Write_Line ("No library version specified");
+ end if;
+
+! else
+! Stringt.String_To_Name_Buffer (Lib_Version.Value);
+! Data.Lib_Internal_Name := Name_Find;
+! end if;
+
+! pragma Assert (The_Lib_Kind.Kind = Single);
+
+! if The_Lib_Kind.Value = Empty_String then
+! if Current_Verbosity = High then
+! Write_Line ("No library kind specified");
+ end if;
+
+! else
+! Stringt.String_To_Name_Buffer (The_Lib_Kind.Value);
+
+! declare
+! Kind_Name : constant String :=
+! To_Lower (Name_Buffer (1 .. Name_Len));
+
+! OK : Boolean := True;
+
+! begin
+
+! if Kind_Name = "static" then
+! Data.Library_Kind := Static;
+
+! elsif Kind_Name = "dynamic" then
+! Data.Library_Kind := Dynamic;
+
+! elsif Kind_Name = "relocatable" then
+! Data.Library_Kind := Relocatable;
+
+! else
+! Error_Msg
+! ("illegal value for Library_Kind",
+! The_Lib_Kind.Location);
+! OK := False;
+! end if;
+
+! if Current_Verbosity = High and then OK then
+! Write_Str ("Library kind = ");
+! Write_Line (Kind_Name);
+! end if;
+! end;
+ end if;
+ end if;
+ end;
+--- 1949,2016 ----
+ Data.Library_Name /= No_Name;
+
+ if Data.Library then
+
+! if not MLib.Tgt.Libraries_Are_Supported then
+! Error_Msg ("?libraries are not supported on this platform",
+! Lib_Name.Location);
+
+! else
+ if Current_Verbosity = High then
+! Write_Line ("This is a library project file");
+ end if;
+
+! pragma Assert (Lib_Version.Kind = Single);
+
+! if Lib_Version.Value = Empty_String then
+! if Current_Verbosity = High then
+! Write_Line ("No library version specified");
+! end if;
+
+! else
+! Stringt.String_To_Name_Buffer (Lib_Version.Value);
+! Data.Lib_Internal_Name := Name_Find;
+ end if;
+
+! pragma Assert (The_Lib_Kind.Kind = Single);
+
+! if The_Lib_Kind.Value = Empty_String then
+! if Current_Verbosity = High then
+! Write_Line ("No library kind specified");
+! end if;
+
+! else
+! Stringt.String_To_Name_Buffer (The_Lib_Kind.Value);
+
+! declare
+! Kind_Name : constant String :=
+! To_Lower (Name_Buffer (1 .. Name_Len));
+
+! OK : Boolean := True;
+
+! begin
+
+! if Kind_Name = "static" then
+! Data.Library_Kind := Static;
+
+! elsif Kind_Name = "dynamic" then
+! Data.Library_Kind := Dynamic;
+
+! elsif Kind_Name = "relocatable" then
+! Data.Library_Kind := Relocatable;
+!
+! else
+! Error_Msg
+! ("illegal value for Library_Kind",
+! The_Lib_Kind.Location);
+! OK := False;
+! end if;
+!
+! if Current_Verbosity = High and then OK then
+! Write_Str ("Library kind = ");
+! Write_Line (Kind_Name);
+! end if;
+! end;
+! end if;
+ end if;
+ end if;
+ end;
+
+*** prj-proc.adb 2001/10/05 16:11:38 1.18
+--- prj-proc.adb 2001/10/22 21:59:35 1.19
+***************
+*** 662,667 ****
+--- 662,668 ----
+
+ if Data.Modifies /= No_Project
+ and then Projects.Table (Data.Modifies).Name = With_Name
++
+ then
+ return Data.Modifies;
+
+
+*** Makefile.in 2001/10/22 00:45:45 1.1415
+--- Makefile.in 2001/10/22 22:07:09 1.1416
+***************
+*** 488,493 ****
+--- 488,497 ----
+ hostparm.o \
+ krunch.o \
+ lib.o \
++ mlib.o \
++ mlib-fil.o \
++ mlib-tgt.o \
++ mlib-utl.o \
+ namet.o \
+ nlists.o \
+ opt.o \
+
+*** prj-proc.adb 2001/10/22 21:59:35 1.19
+--- prj-proc.adb 2001/10/22 22:11:00 1.20
+***************
+*** 246,252 ****
+ -- Reference to the last string elements in Result, when Kind is List.
+
+ begin
+! Result.Location := Location_Of (From_Project_Node);
+
+ -- Process each term of the expression, starting with First_Term
+
+--- 246,252 ----
+ -- Reference to the last string elements in Result, when Kind is List.
+
+ begin
+! Result.Location := Location_Of (First_Term);
+
+ -- Process each term of the expression, starting with First_Term
+
+***************
+*** 639,645 ****
+ end case;
+
+ The_Term := Next_Term (The_Term);
+-
+ end loop;
+
+ return Result;
+--- 639,644 ----
+***************
+*** 662,668 ****
+
+ if Data.Modifies /= No_Project
+ and then Projects.Table (Data.Modifies).Name = With_Name
+-
+ then
+ return Data.Modifies;
+
+--- 661,666 ----
+2001-12-05 Robert Dewar <dewar@gnat.com>
+
+ * Makefile.in: Add dependencies for System.IO for GNAT.Regexp
+
+2001-12-05 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
+ constraint, introduce explicit subtype declaration and derive from it.
+
+ * sem_ch3.adb: Minor reformatting
+
+2001-12-05 Robert Dewar <dewar@gnat.com>
+
+ * checks.adb (Determine_Range): Increase cache size for checks.
+ Minor reformatting
+
+ * exp_ch6.adb: Minor reformatting
+ (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
+ a parameter whose root type is System.Address, since treating such
+ subprograms as pure in the code generator is almost surely a mistake
+ that will lead to unexpected results.
+
+ * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
+ change handling of conversions.
+
+ * g-regexp.adb: Use System.IO instead of Ada.Text_IO.
+
+2001-12-05 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch3.adb (Analyze_Object_Declaration): If expression is an
+ aggregate with static wrong size, attach generated Raise node to
+ declaration.
+
+2001-12-05 Robert Dewar <dewar@gnat.com>
+
+ * sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
+ Fixes compilation abandoned bomb in B24009B.
+
+2001-12-05 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch12.adb:
+ Document use of Associated_Node on Selected_Components.
+ (Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
+ to clarify use of untyped descendant fields.
+
+2001-12-05 Robert Dewar <dewar@gnat.com>
+
+ * prj-dect.ads: Add ??? comment
+ Add 2001 to copyright notice (was not done in after all)
+
+ * prj-part.adb: Minor reformatting. Reword one awkward error message.
+
+ * prj.ads: Minor reformatting throughout, and add some ??? comments
+
+ * snames.ads: Minor reformatting
+
+2001-12-05 Geert Bosch <bosch@gnat.com>
+
+ * snames.adb: Autoupdate
+
+2001-12-05 Vincent Celier <celier@gnat.com>
+
+ * prj-dect.adb (Parse): Rename parameter Modifying to Extends.
+
+ * prj-dect.ads (Parse): Rename parameter Modifying to Extends.
+
+ * prj-env.adb: Minor comment changes (modifying -> extends).
+
+ * prj-nmsc.adb: Minor comment changes (modifying -> extends).
+
+ * prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
+ Tok_Extends.
+
+ * prj.adb (Initialize): Change Modifying to Extends.
+
+ * scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
+
+ * prj.ads: Minor comment change (Modifying -> extending).
+
+ * snames.ads: Change modifying to extends.
+
+2001-12-05 Robert Dewar <dewar@gnat.com>
+
+ * sem_warn.adb: Remove stuff for conditionals, we are not going to
+ do this after all.
+
+ * sem_warn.ads: Remove stuff for conditionals, we are not going to
+ do this after all. Add 2001 to copyright notice
+
+2001-12-04 Geert Bosch <bosch@gnat.com>
+
+ * einfo.h, sinfo.h, treeprs.ads: Regenerate.
+
+2001-12-04 Robert Dewar <dewar@gnat.com>
+
+ * errout.adb (Error_Msg): Ignore attempt to put error msg at junk
+ location if we already have errors. Stops some cases of cascaded
+ errors.
+
+ * errout.adb: Improve comment.
+
+2001-12-04 Robert Dewar <dewar@gnat.com>
+
+ * sem_ch12.adb:
+ (Analyze_Formal_Type_Definition): Defend against Error.
+ (Analyze_Formal_Subprogram): Defend against Error.
+
+ * par-ch12.adb (F_Formal_Type_Declaration): In case of error,
+ remove following semicolon if present. Removes cascaded error.
+
+2001-12-04 Douglas B. Rupp <rupp@gnat.com>
+
+ * bindgen.adb:
+ (Gen_Exception_Table_Ada): Write "begin" and then return if Num
+ exceptions equals 0.
+ (Gen_Exception_Table_C): Return if Num exceptions equals 0.
+ Fixes PIWG E tests (which have to be run with -gnatL).
+
+2001-12-04 Robert Dewar <dewar@gnat.com>
+
+ * einfo.ads: Minor reformatting
+
+2001-12-04 Ed Schonberg <schonber@gnat.com>
+
+ * einfo.ads: Block_Node points to the identifier of the block, not to
+ the block node itself, to preserve the link when the block is
+ rewritten, e.g. within an if-statement with a static condition.
+
+ * inline.adb (Cleanup_Scopes): recover block statement from block
+ entity using new meaning of Block_Node.
+
+ * sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
+ identifier of block node, rather than to node itself.
+
+2001-12-04 Gary Dismukes <dismukes@gnat.com>
+
+ * layout.adb:
+ (Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
+ (Discrimify): Go back to setting the Etypes of the selected component
+ because the Vname component does not exist at this point and will
+ fail name resolution. Also set Analyzed.
+ Remove with and use of Sem_Res.
+
+2001-12-04 Arnaud Charlet <charlet@gnat.com>
+
+ * Makefile.in: (HIE_SOURCES): add s-fat*.
+
+2001-12-04 Robert Dewar <dewar@gnat.com>
+
+ * sem_attr.adb:
+ (Compile_Time_Known_Attribute): New procedure.
+ (Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
+ proper range check.
+
+2001-12-04 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
+ processing discriminants to diagnose illegal default values.
+
+2001-12-04 Ed Schonberg <schonber@gnat.com>
+
+ * sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
+ access discriminant within a type extension that constrains its
+ parent discriminants.
+
+2001-12-04 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
+ is malformed, use instance of Any_Id to allow analysis to proceed.
+
+ * par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
+ type definition is illegal.
+ (P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
+ misplaced.
+
+2001-12-04 Ed Schonberg <schonber@gnat.com>
+
+ * sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
+ constants.
+
+2001-12-04 Robert Dewar <dewar@gnat.com>
+
+ * errout.adb: Minor reformatting
+
+2001-12-04 Robert Dewar <dewar@gnat.com>
+
+ * exp_util.adb: Minor reformatting from last change
+
+ * errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
+ which is a rewriting of an expression, traverse the original
+ expression to remove warnings that may have been posted on it.
+
+2001-12-04 Ed Schonberg <schonber@gnat.com>
+
+ * exp_util.adb (Must_Be_Aligned): Return false for a component of a
+ record that has other packed components.
+
+2001-12-04 Douglass B. Rupp <rupp@gnat.com>
+
+ * adaint.c: Minor cleanups.
+
+2001-12-04 Douglass B. Rupp <rupp@gnat.com>
+
+ * adaint.c: Do not use utime.h on vxworks.
+
+2001-12-04 Arnaud Charlet <charlet@gnat.com>
+
+ * Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
+ more confusion than it solves.
+
+2001-12-04 Geert bosch <bosch@gnat.com>
+
+ * einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
+
+2001-12-04 Geert Bosch <bosch@gnat.com>
+
+ * Makefile.in (update-sources): New target.
+ For use by gcc_release script.
+
+2001-12-04 Ed Schonberg <schonber@gnat.com>
+
+ * sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
+ a configuration pragma, it is now legal wherever a pragma can appear.
+
+2001-12-04 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in: Don't set ALL. Delete @cross_defines@,
+ @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
+ is now @CROSS@ -DIN_GCC; update comment.
+
+2001-12-04 Robert Dewar <dewar@gnat.com>
+
+ * einfo.adb (Has_Pragma_Pure_Function): New flag.
+ Fix problem that stopped ceinfo from working
+
+ * einfo.ads (Has_Pragma_Pure_Function): New flag.
+
+ * sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
+
+2001-12-04 Douglas B. Rupp <rupp@gnat.com>
+
+ * gnatchop.adb:
+ (File_Time_Stamp): New procedure.
+ (Preserve_Mode): New boolean.
+ (Write_Unit): Pass time stamp.
+ Implement -p switch (preserve time stamps).
+
+ * gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
+
+ * gnatchop.adb: Do usage info for -p switch
+
+ * adaint.h (__gnat_set_file_time_name): New function
+
+ * adaint.c (__gnat_set_file_time_name): Implement
+
+ * adaint.h: Fix typo
+
+2001-12-03 Robert Dewar <dewar@gnat.com>
+
+ * sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
+ have Associated_Node.
+
+2001-12-03 Robert Dewar <dewar@gnat.com>
+
+ * prj-proc.adb: Minor reformatting
+
+ * make.adb: Minor reformatting
+
+2001-12-03 Geert Bosch <bosch@gnat.com>
+
+ * make.adb: Minor reformatting.
+
+2001-12-03 <dewar@gnat.com>
+
+ * sem_ch12.adb: Minor reformatting
+
+2001-12-03 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
+ push Standard on the stack before analyzing the instance body,
+ in order to have a clean visibility environment.
+
+ * sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
+
+2001-12-03 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch12.adb (Instantiate_Package_Body): Protect against double
+ instantiation of a body that contains an inlined body.
+
+2001-12-03 Ed Schonberg <schonber@gnat.com>
+
+ * sem_ch12.adb:
+ (Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
+ to prevent freezing within formal packages.
+ (Freeze_Subprogram_Body): If body comes from another instance that
+ appeared before its own body, place freeze node at end of current
+ declarative part, to prevent a back-end crash.
+ (Inline_Instance_Body): Handle properly a package instance within
+ a subprogram instance that is a child unit.
+
+2001-12-01 Graham Stott <grahams@redhat.com>
+
+ * Makefile.in (misc.o): Add missing $(srcdir) prefix
+ and add optabs.h dependency.
+
+ * misc.c: Include optabs.h
+ (gnat_tree_code_type): Make static and const.
+ (gnat_tree_code_length): Likewise.
+ (gnat_tree_code_name): Likewise.
+ (update_setjmp_buf): Obtain operands mode from insn_data.
+
+2001-11-29 Richard Henderson <rth@redhat.com>
+
+ * init.c: Remove obsolete dwarf2 frame.h section.
+
+2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * Make-lang.in (ada.generated-manpages): New dummy target.
+
+2001-11-29 Ed Schonberg <schonber@gnat.com>
+
+ * g-os_lib.adb (Add_To_Command): use explicit loop to move string
+ into Command, an array conversion is illegal here. Uncovered by
+ ACATS B460005.
+
+2001/11/28 Geert Bosch <bosch@gnat.com>
+
+ * init.c: Minor whitespace changes.
+
+2001-11-28 Doug Rupp <rupp@gnat.com>
+
+ * init.c: (__gnat_install_handler,VMS): Increase size of alternate
+ signal stack.
+
+2001-11-28 Zack Weinberg <zack@codesourcery.com>
+
+ * misc.c (gnat_expand_constant): Move declaration above
+ definition of lang_hooks.
+ (LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
+ (gnat_init): lang_expand_constant no longer exists.
+
+ (internal_error_function): Remove #ifdef HAVE_VPRINTF. We
+ always have vprintf.
+ (gnat_init): Always call set_internal_error_function.
+
+2001-11-27 Andreas Jaeger <aj@suse.de>
+
+ * Makefile.in (stamp-tool_src_dir): Use symbolic link.
+
+2001-11-27 Laurent Guerby <guerby@acm.org>
+
+ * Makefile.in: Regenerate Ada dependencies.
+
+2001-11-26 Richard Henderson <rth@redhat.com>
+
+ * Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
+ gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
+ gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
+
+2001-11-25 Laurent Guerby <guerby@acm.org>
+
+ * sysdep.c (rts_get_*): Fix style.
+
+2001-11-19 Laurent Guerby <guerby@acm.org>
+
+ * Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
+ since it is of no apparent use and cause warnings.
+
+2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (gnat_decode_option, gnat_init_options): Make definitions
+ static too.
+ (gnat_init): Don't return NULL.
+ (finish_parse): Remove.
+
+2001-11-17 Laurent Guerby <guerby@acm.org>
+
+ * Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
+ * gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
+ * io-aux.c: Provide K&R prototypes to all functions, reformat code.
+ * lang-spec.h: Add missing struct field to silence warnings.
+ * sysdep.c (rts_get_*): Provide K&R prototype.
+ * sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
+ * traceback.c (Unlock_Task, Lock_Task): Likewise.
+ * tracebak.c (__gnat_backtrace): Remove unused variable.
+ * utils.c (end_subprog_body): Move to K&R style.
+
+Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
+
+2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (gnat_init): Change prototype. Include the
+ functionality of the old init_parse and init_decl_processing.
+ (gnat_init_decl_processing): New prototype.
+ (init_parse): Remove.
+ * utils.c (init_decl_processing): Rename gnat_init_decl_processing.
+
+2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (gnat_print_decl, gnat_print_type): Renamed.
+ (LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
+ (print_lang_statistics, lang_print_xnode, print_lang_identifier,
+ set_yydebug): Remove.
+
+2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
+ (struct lang_hooks): Constify.
+ (language_string, lang_identify): Remove.
+ * utils.c (init_decl_processing): Update.
+
+2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * misc.c: Include langhooks-def.h.
+ * Makefile.in: Update.
+
+2001-10-30 Robert Dewar <dewar@gnat.com>
+
+ * style.adb:
+ (Check_Identifier): Rewrite circuit to be compatible with use of letters
+ in the upper half of ASCII.
+ (Check_Identifier): Minor reformatting
+
+2001-10-30 Geert Bosch <bosch@gnat.com>
+
+ * (Associated_Node, Set_Associated_Node): Do not check for
+ Freeze_Entity.
+
+2001-10-30 Robert Dewar <dewar@gnat.com>
+
+ * a-reatim.ads: Minor reformatting
+
+2001-10-30 Robert Dewar <dewar@gnat.com>
+
+ * gnatdll.adb: Minor reformatting throughout. Many ??? added for
+ undocumented declarations.
+
+2001-10-30 Pascal Obry <obry@gnat.com>
+
+ * gnatdll.adb (Parse_Command_Line): handle -g option to be passed
+ to the binder and linker.
+ Minor style fix.
+
+ * mdll.ads: Fix layout. Update copyright notice.
+
+ * mdll.adb: Fix layout. Update copyright notice.
+
+2001-10-30 Robert Dewar <dewar@gnat.com>
+
+ * usage.adb: Minor fix to output for -gnaty.
+
+2001-10-30 Ed Schonberg <schonber@gnat.com>
+
+ * a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
+ to accommodate all its possible values.
+
+ * a-reatim.adb (Split): Special-case handling of Time_Span_First
+ and of small absolute values of T.
+
+2001-10-30 Richard Kenner <kenner@gnat.com>
+
+ * misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
+ set_mem_attributes since not needed and wrong if RESULT if a REG;
+ fixes ACATS failures.
+
+2001-10-30 Geert Bosch <bosch@gnat.com>
+
+ * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
+ s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
+
+2001-10-30 Robert Dewar <dewar@gnat.com>
+
+ * bindusg.adb: Undocument -f switch.
+
+ * gnatcmd.adb: Remove /FULL_ELABORATION.
+
+ * opt.ads (Force_RM_Elaboration_Order): Document that this is
+ obsolescent.
+
+ * gnatbind.adb: Output new warning for use of obsolescent -f switch.
+
+ * gnatbind.adb: Minor update of warning msg.
+
+2001-10-30 Vincent Celier <celier@gnat.com>
+
+ * gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
+ for project file switches (-P (/PROJECT_FILE=),
+ -X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
+ or MEDIUM or HIGH)
+
+2001-10-30 Geert Bosch <bosch@gnat.com>
+
+ * decl.c: Minor whitespace fixes.
+
+2001-10-30 Richard Kenner <kenner@gnat.com>
+
+ * utils2.c (build_allocator): Test for SIZE overflow in array case too
+
+2001-10-30 Geert Bosch <bosch@gnat.com>
+
+ * ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
+ Found due to GCC 3.0 warning of using uninitialized value.
+
+ * layout.adb:
+ (Get_Max_Size): Use variant record for tracking value/expression.
+ Makes logic clearer and prevents warnings for uninitialized variables.
+ (Layout_Array_Type): Use variant record for tracking value/expression.
+ Makes logic clearer and prevents warnings for uninitialized variables.
+
+2001-10-30 Robert Dewar <dewar@gnat.com>
+
+ * lib.adb: Minor reformatting
+
+ * s-taprop.ads: Minor reformatting
+
+2001-10-29 Laurent Guerby <guerby@acm.org>
+
+ * init.c:
+ (Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
+ const.
+ (_gnat_error_handler): Make MSG const.
+
+2001-10-29 Richard Kenner <kenner@gnat.com>
+
+ * sysdep.c: Fix localtime_r problem on LynxOS.
+ Also remove #elif to avoid warnings.
+
+ * misc.c (yyparse): Don't set up and register jmpbuf; remove decls
+ used by this.
+
+ * decl.c (annotate_value): Make SIZE unsigned to avoid warning.
+
+2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
+ exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
+ g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
+ g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
+ layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
+ s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
+ sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
+ sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
+ sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
+ types.ads, urealp.adb: Fix spelling errors.
+
+2001-10-27 Laurent Guerby <guerby@acm.org>
+
+ * trans.c (gigi): Fix non determinism leading to bootstrap
+ comparison failures for debugging information.
+
+2001-10-26 Florian Weimer <fw@deneb.enyo.de>
+
+ * gnat_rm.texi: Use @./@: where appropriate.
+
+2001-10-26 Robert Dewar <dewar@gnat.com>
+
+ * sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
+
+2001-10-26 Richard Kenner <kenner@gnat.com>
+
+ * gmem.c (__gnat_gmem_read_next): Properly check for EOF
+
+2001-10-26 Richard Kenner <kenner@gnat.com>
+
+ * decl.c (validate_size): Modify message for bad size to avoid
+ implication that compiler is modifying the size.
+
+2001-10-26 Robert Dewar <dewar@gnat.com>
+
+ * prj-util.adb: Minor reformatting. Fix bad header format.
+
+2001-10-26 Robert Dewar <dewar@gnat.com>
+
+ * sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
+
+ * sinfo.ads: Clarify use of Associated_Node (documentation only).
+
+ * sem_ch12.adb: Change Node4 to Associated_Node. Change
+ Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
+ much more narrowly in places where needed. These are cleanups.
+
+2001-10-26 Joel Brobecker <brobecke@gnat.com>
+
+ * 5zosinte.ads (null_pthread): new constant.
+
+ * 5ztaprop.adb:
+ (Initialize_TCB): Initialize thread ID to null, to be able to verify
+ later that this field has been set.
+ (Finalize_TCB): ditto.
+ (Suspend_Task): Verify that the thread ID is not null before using it.
+ (Resume_Task): ditto.
+
+ * s-tasdeb.adb:
+ (Resume_All_Tasks): Lock the tasks list before using it.
+ (Suspend_All_Tasks): ditto.
+
+2001-10-26 Richard Kenner <kenner@gnat.com>
+
+ * decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
+ Make constant variant of designated type for Is_Access_Constant.
+ Call update_pointer_to with main variant.
+
+ * trans.c (process_freeze_entity, process_type):
+ Call update_pointer_to on main variant.
+
+ * utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
+ If main variant, update all other variants.
+
+ * utils2.c (build_unary_op, case INDIRECT_REF): No longer set
+ TREE_STATIC.
+
+2001-10-26 Robert Dewar <dewar@gnat.com>
+
+ * prj-util.adb: Minor reformatting
+
+2001-10-26 Robert Dewar <dewar@gnat.com>
+
+ * prj-util.adb: Minor reformatting
+
+2001-10-26 Robert Dewar <dewar@gnat.com>
+
+ * prj-attr.adb: Minor reformatting throughout
+
+2001-10-26 Robert Dewar <dewar@gnat.com>
+
+ * prj-attr.ads: Minor reformatting
+ Add ??? comment (this whole spec has almost no comments)
+
+2001-10-26 Vincent Celier <celier@gnat.com>
+
+ * g-os_lib.adb (Normalize_Pathname): Preserve the double slash
+ ("//") that precede the drive letter on Interix.
+
+2001-10-26 Geert Bosch <bosch@gnat.com>
+
+ * gnat_rm.texi: Add GNAT Reference Manual.
+
+2001-10-25 Robert Dewar <dewar@gnat.com>
+
+ * sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
+ is Error. Similar change for other renaming cases.
+
2001-10-25 Robert Dewar <dewar@gnat.com>
* s-atacco.ads: Add pragma Inline_Always for functions.
2001-10-25 Ed Schonberg <schonber@gnat.com>
- * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
+ * par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
return Error rather than Empty so that analysis can proceed.
2001-10-25 Ed Schonberg <schonber@gnat.com>
- * sem_util.adb (Enter_Name): better handling of cascaded error
+ * sem_util.adb (Enter_Name): better handling of cascaded error
messages when a unit appears in its own context.
2001-10-25 Ed Schonberg <schonber@gnat.com>
- * sem_util.adb (Defining_Entity): in case of error, attach created
+ * sem_util.adb (Defining_Entity): in case of error, attach created
entity to specification, so that semantic analysis can proceed.
2001-10-25 Robert Dewar <dewar@gnat.com>
- * sem_util.adb
+ * sem_util.adb
(Defining_Entity): Deal with Error.
(Process_End_Label): Deal with bad end label for.
2001-10-25 Ed Schonberg <schonber@gnat.com>
- * sem_elab.adb (Check_A_Call): refine message when call is in an
+ * sem_elab.adb (Check_A_Call): refine message when call is in an
instance but callee is not declared in the generic unit.
2001-10-25 Ed Schonberg <schonber@gnat.com>
-
- * sem_elab.adb (Check_A_Call): check for renaming before finding the
+
+ * sem_elab.adb (Check_A_Call): check for renaming before finding the
enclosing unit, which may already be different from the calling unit.
2001-10-25 Geert Bosch <bosch@gnat.com>
2001-10-25 Ed Schonberg <schonber@gnat.com>
- * sem_res.adb (Resolve_Call): if the call is actually an indexing
- operation on the result of a parameterless call, perform elaboration
+ * sem_res.adb (Resolve_Call): if the call is actually an indexing
+ operation on the result of a parameterless call, perform elaboration
check after the node has been properly rewritten.
-
- * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
- inlined within the generic tree, the defining identifier is not a
+
+ * sem_ch12.adb (Copy_Generic_Node): after the proper body has been
+ inlined within the generic tree, the defining identifier is not a
compilation_unit.
2001-10-25 Ed Schonberg <schonber@gnat.com>
- * sem_res.adb (Resolve): special-case resolution of Null in an
+ * sem_res.adb (Resolve): special-case resolution of Null in an
instance or an inlined body to avoid view conflicts.
-
- * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
+
+ * sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
compatibility by retrieving the access type of the generic copy.
2001-10-25 Robert Dewar <dewar@gnat.com>
(Analyze_Number_Declaration): Handle error expression.
(Signed_Integer_Type_Declaration): Handle error bound.
(Analyze_Subtype_Indication): Handle error range.
-
+
* sem_util.adb (Get_Index_Bounds): Check for Error.
2001-10-25 Robert Dewar <dewar@gnat.com>
- * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
+ * restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
in no run time mode.
2001-10-25 Pascal Obry <obry@gnat.com>
- * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
+ * gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
mode case for ALLOC case.
-
- * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
+
+ * gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
all platforms. Improvement of last change.
2001-10-25 Robert Dewar <dewar@gnat.com>
2001-10-25 Pascal Obry <obry@gnat.com>
- * osint.adb (Read_Default_Search_Dirs): correctly detect relative
+ * osint.adb (Read_Default_Search_Dirs): correctly detect relative
pathnames in UNIX and DOS style with drive letter.
(Is_Relative): new routine.
-
+
* osint.adb: Minor reformatting
-
- * osint.adb (Is_Relative): implementation using
+
+ * osint.adb (Is_Relative): implementation using
GNAT.OS_Lib.Is_Absolute_Path. Better fix.
2001-10-25 Pascal Obry <obry@gnat.com>
- * g-dirope.adb (Basename): correctly compute offset between the
+ * g-dirope.adb (Basename): correctly compute offset between the
original Path and the translated one.
-
+
* g-dirope.adb: (Base_Name): add some comments.
2001-10-25 Robert Dewar <dewar@gnat.com>
- * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
+ * exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
in HIE mode, avoids compilation abandoned message
-
+
* exp_imgv.adb: Correct typo in previous change
-
+
* exp_imgv.adb: Correct typo in previous change (not my day!)
2001-10-25 Robert Dewar <dewar@gnat.com>
2001-10-25 Pascal Obry <obry@gnat.com>
- * g-awk.ads: Move all pragma inlines next to the routine
+ * g-awk.ads: Move all pragma inlines next to the routine
declarations. This is more uniform with other GNAT spec.
2001-10-22 Geert Bosch <bosch@gnat.com>
2001-10-11 Ed Schonberg <schonber@gnat.com>
- * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
+ * exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
renaming of discriminant for mutable record type.
2001-10-11 Robert Dewar <dewar@gnat.com>
* validsw.adb: Properly save -gnatVn status.
2001-10-11 Robert Dewar <dewar@gnat.com>
-
+
* usage.adb: Add lines for V switch.
- * gnatcmd.adb (COMPILE): Revise translations for -gnatV
+ * gnatcmd.adb (COMPILE): Revise translations for -gnatV
(/VALIDITY_CHECKING).
2001-10-11 Ed Schonberg <schonber@gnat.com>
- * sem_type.adb (Add_One_Interp): an operator for a type declared in
+ * sem_type.adb (Add_One_Interp): an operator for a type declared in
an extension of System is known to be visible.
2001-10-11 Ed Schonberg <schonber@gnat.com>
- * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
+ * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
properly. Fixes regression on ACATS C34005G.
2001-10-11 Robert Dewar <dewar@gnat.com>
- * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
+ * sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
loop in generic instance, since this is likely not very useful.
2001-10-11 Robert Dewar <dewar@gnat.com>
- * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
+ * restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
the error message for high integrity mode.
-
- * rtsfind.adb (RTE): Give message if we try to find an entity that
+
+ * rtsfind.adb (RTE): Give message if we try to find an entity that
is not available in high integrity mode.
-
+
* rtsfind.ads:
(OK_To_Use_In_HIE_Mode): New array.
(RTE): May return Empty in high integrity mode.
-
- * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
- OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
-
- * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
- unit if not inlined always and in no runtime mode. Fixes problem
+
+ * rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
+ OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
+
+ * sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
+ unit if not inlined always and in no runtime mode. Fixes problem
caused by new Rtsfind changes.
-
- * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
+
+ * sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
body is deleted.
-
- * rtsfind.adb (RTE): Make sure we do not try to load unit after
+
+ * rtsfind.adb (RTE): Make sure we do not try to load unit after
giving message for entity not available in high integrity mode.
2001-10-11 Pascal Obry <obry@gnat.com>
-
+
* impunit.adb: Add GNAT.CRC32.
2001-10-11 Ed Schonberg <schonber@gnat.com>
- * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
- properly the case where one universal operand in a non-static
+ * exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
+ properly the case where one universal operand in a non-static
exponentiation of a real literal.
2001-10-11 Ed Schonberg <schonber@gnat.com>
- * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
- clause, return the gobal finalization list, for lack of anthing else.
+ * exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
+ clause, return the gobal finalization list, for lack of anthing else.
2001-10-11 Ed Schonberg <schonber@gnat.com>
- * exp_ch7.adb (Make_Transient_Block): if statement is within
- exception handler, always use new transient scope to place Clean
+ * exp_ch7.adb (Make_Transient_Block): if statement is within
+ exception handler, always use new transient scope to place Clean
procedure.
2001-10-11 Pascal Obry <obry@gnat.com>
(GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
(GNATLS_RTL_OBJS): add g-crc32.o
(GNATMAKE_RTL_OBJS): add g-crc32.o
-
+
* ali-util.adb:
(CRC_Match): new function.
- (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
+ (Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
instead of the previous simple checksum algorithm.
(Time_Stamp_Mismatch): use CRC_Match for comparison.
(Set_Source_Table): idem.
-
+
* ali-util.ads:
- (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
+ (Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
instead of simple checksum.
(CRC_Match): new function.
(CRC_Error): new constant.
-
- * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
- a CRC now and not a simple checksum. A CRC uses lower-case hex
+
+ * ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
+ a CRC now and not a simple checksum. A CRC uses lower-case hex
letters, fixes ambiguity in parsing.
-
- * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
+
+ * ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
is what this variable will store.
-
+
* bcheck.adb: Change reference to chechsum in comments by CRC.
- (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
- rename All_Checksum_Match to All_CRC_Match. Change due to API
- renaming since now GNAT does not use a simple checksum but a
+ (Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
+ rename All_Checksum_Match to All_CRC_Match. Change due to API
+ renaming since now GNAT does not use a simple checksum but a
CRC using GNAT.CRC32.
-
- * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
+
+ * gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
now and not anymore a simple checksum.
-
- * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
+
+ * lib-load.adb: Use Source_CRC instead of Source_Checksum in many
places.
-
+
* lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
-
+
* scans.adb:
(Restore_Scan_State): rename Checksum to CRC.
(Save_Scan_State): idem.
-
+
* scans.ads:
With GNAT.CRC32.
(Checksum): rename to CRC.
(Saved_Scan_State): Save_Checksum field renamed to Save_CRC
-
- * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
+
+ * scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
GNAT.CRC32). Update copyright notice.
-
- * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
+
+ * scn-slit.adb: Rename many Accumulate_Checksum to Update (from
GNAT.CRC32). Update copyright notice.
-
+
* scn.adb:
(Accumulate_Checksum): removed.
(Update): new procedure. Add a wide-character into the CRC.
-
+
* sinput-l.adb:
(Complete_Source_File_Entry): use CRC32 instead of simple checksum.
- (Load_File): fix initialization of S (change Source_Checksum to
+ (Load_File): fix initialization of S (change Source_Checksum to
Source_CRC)
-
- * sinput-p.adb (Load_Project_File): rename Source_Checksum to
+
+ * sinput-p.adb (Load_Project_File): rename Source_Checksum to
Source_CRC in S initialization.
-
+
* sinput.adb (Source_Checksum): renamed to Source_CRC.
-
+
* sinput.ads (Source_Checksum): renamed to Source_CRC.
Update comments for the CRC.
-
+
* types.adb (Hex): Use lowercase for the letter part.
-
- * types.ads (Get_Hex_String): Returns the hexadecimal representation
- for a word. This is currently used only for CRC. In previous version,
- the checksum was using a representation with all letter being
- upper-case. With the new implementation (using CRC) we do not remove
- the 32th bit of the CRC, so we can have an upper-case starting letter
- in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
- It is ambigous since the CRC was optional and could be followed by
- options like EB, EE. So now this routines uses lower-case letter for
- the hexadecimal representation. Strange enough only lower case letters
+
+ * types.ads (Get_Hex_String): Returns the hexadecimal representation
+ for a word. This is currently used only for CRC. In previous version,
+ the checksum was using a representation with all letter being
+ upper-case. With the new implementation (using CRC) we do not remove
+ the 32th bit of the CRC, so we can have an upper-case starting letter
+ in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
+ It is ambigous since the CRC was optional and could be followed by
+ options like EB, EE. So now this routines uses lower-case letter for
+ the hexadecimal representation. Strange enough only lower case letters
where checked in Scan_ALI (even if this was not a possible case).
-
+
* gnatvsn.ads (Library_Version): changed to 3.15a.
-
- * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
+
+ * s-crc32.ads: Initial version from GNAT.CRC32. This is the version
for the compiler.
-
- * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
+
+ * s-crc32.adb: Initial version from GNAT.CRC32. This is the version
for the compiler.
-
+
* ali-util.adb: Redo previous change to avoid using word CRC everywhere
Add 2001 to copyright notice
(Accumulate_Checksum): Modify to use System.CRC32.
-
- * ali-util.ads: Redo changes of previous revision to continue to use
+
+ * ali-util.ads: Redo changes of previous revision to continue to use
the word Checksum. Add 2001 to copyright notice.
-
+
* ali.adb: Undo some of previous changes, not needed.
Keep the change for lower case letters in the checksum.
-
+
* ali.ads: Undo previous change not needed.
* bcheck.adb: Undo most of previous change, not needed.
But do use Checksums_Match for checksum comparison.
-
+
* gnatls.adb: Undo most of previous change, not needed.
But do use Checksums_Match for comparing checksums.
-
+
* lib-load.adb: Undo previous change, not needed.
-
+
* lib-writ.adb: Undo previous change, not needed.
-
- * lib-writ.ads: Document that checksums use lower case,
+
+ * lib-writ.ads: Document that checksums use lower case,
not upper case letters.
-
+
* scans.adb: Undo previous change, not needed
-
+
* scans.ads: Undo previous change, not needed.
-
+
* scn-nlit.adb: Undo previous changes, not needed.
-
+
* scn-slit.adb: Undo previous change, not needed. Fix header format.
-
+
* scn.adb:
(Accumulate_Checksum): Use System.CRC32.
(Initialize_Checksum): New procedure.
Remove other changes of previous revision.
-
+
* sinput-p.adb: Undo previous change, not needed.
-
+
* sinput.adb: Undo previous change, not needed.
* sinput-l.adb: Undo previous change, not needed.
-
- * sinput.ads: Undo previous change, not needed. Keep only comment
+
+ * sinput.ads: Undo previous change, not needed. Keep only comment
on new checksum algorithm
-
+
* Makefile.in: Add s-crc32 as needed, remove g-crc32.
Also remove a-tags and a-stream from GNAT sources.
-
+
* ali.adb (Scan_ALI): fix typo introduce in latest check-in.
-
+
* Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
2001-10-11 Geert Bosch <bosch@gnat.com>
2001-10-10 Geert Bosch <bosch@gnat.com>
* gnat-style.texi: New file describing coding guidelines for Ada.
-
+
2001-10-10 Ed Schonberg <schonber@gnat.com>
- * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
+ * einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
is Flag174.
2001-10-10 Geert Bosch <bosch@gnat.com>
Switches indexed by the file name.
(Collect_Arguments_And_Compile): Idem.
Reflect the attribute name changes.
-
+
* prj-attr.adb:
(Initialisation_Data): Change the names of some packages and
attributes.
(Initialize): process case insensitive associative arrays.
-
+
* prj-attr.ads:
(Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
-
+
* prj-dect.adb:
(Parse_Attribute_Declaration): For case insensitive associative
arrays, set the index string to lower case.
-
+
* prj-env.adb:
Reflect the changes of the project attributes.
-
+
* prj-nmsc.adb:
Replace Check_Naming_Scheme by Ada_Check and
Language_Independent_Check.
-
+
* prj-nmsc.ads:
Replaced Check_Naming_Scheme by 2 procedures:
Ada_Check and Language_Independent_Check.
-
+
* prj-proc.adb:
(Process_Declarative_Items): For case-insensitive associative
arrays, set the index string to lower case.
(Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
Prj.Nmsc.Check_Naming_Scheme.
-
+
* prj-tree.adb:
(Case_Insensitive): New function
(Set_Case_Insensitive): New procedure
-
+
* prj-tree.ads:
(Case_Insensitive): New function
(Set_Case_Insensitive): New procedure
(Project_Node_Record): New flag Case_Insensitive.
-
+
* prj-util.adb:
(Value_Of): new function to get the string value of a single
string variable or attribute.
-
+
* prj-util.ads:
(Value_Of): new function to get the string value of a single
string variable or attribute.
-
+
* prj.adb:
(Ada_Default_Spec_Suffix): New function
(Ada_Default_Impl_Suffix): New function
Change definitions of several constants to reflect
new components of record types.
-
+
* prj.ads:
(Naming_Data): Change several components to reflect new
elements of naming schemes.
Language_Independent_Checked.
(Ada_Default_Spec_Suffix): New function.
(Ada_Default_Impl_Suffix): New function.
-
+
* snames.ads:
Modification of predefined names for project manager: added
Implementation, Specification_Exceptions, Implementation_Exceptions,
Finder. Removed Body_Part, Specification_Append, Body_Append,
Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
Gnatlink.
-
+
* prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
Add comments.
-
+
* prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
not that it is Nil_Variable_Value.
-
+
* prj.ads: Add ??? for uncommented declarations
2001-10-10 Ed Schonberg <schonber@gnat.com>
- * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
- constant, do not indicate possible modification, so that gigi can
+ * sem_prag.adb: (Analyze_Pragma, case External): If entity is a
+ constant, do not indicate possible modification, so that gigi can
treat it as a bona fide constant.
2001-10-10 Robert Dewar <dewar@gnat.com>
* sem_prag.adb: Add processing for pragma External.
-
+
* snames.ads: Add entry for pragma External.
-
+
* par-prag.adb: Add pragma External.
-
+
* snames.adb: Updated to match snames.ads.
2001-10-10 Ed Schonberg <schonber@gnat.com>
* exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
a dynamic task if the allocator appears in an indexed assignment
or selected component assignment.
-
- * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
- For a dynamic task in an assignment statement, use target of
+
+ * exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
+ For a dynamic task in an assignment statement, use target of
assignment to generate meaningful name.
2001-10-10 Ed Schonberg <schonber@gnat.com>
- * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
+ * einfo.adb (Write_Field19_Name): Body_Entity is also defined for
a generic package.
* einfo.ads: Body_Entity is also defined for generic package.
Documentation change only
-
- * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
- others_choice for a discriminated component initialization,
- convert discriminant references into the corresponding discriminals.
-
- * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
- only if original type is private and expression has to be wrapped
+
+ * exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
+ others_choice for a discriminated component initialization,
+ convert discriminant references into the corresponding discriminals.
+
+ * exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
+ only if original type is private and expression has to be wrapped
in a conversion.
-
- * checks.adb:
- (Apply_Constraint_Check): Do not perform length check
+
+ * checks.adb:
+ (Apply_Constraint_Check): Do not perform length check
if expression is an aggregate with only an others_choice.
- (Length_N_Cond): two references to the same in_parameter
+ (Length_N_Cond): two references to the same in_parameter
(typically the discriminal in an init_proc) denote the same value.
Two useful optimization uncovered by bugfixes above.
2001-10-10 Robert Dewar <dewar@gnat.com>
- * xeinfo.adb: Change int to char in translation of enumeration types.
+ * xeinfo.adb: Change int to char in translation of enumeration types.
This fixes a problem in the C representation of component alignment.
Add 2001 to copyright notice
2001-10-10 Richard Kenner <kenner@gnat.com>
- * decl.c: (validate_size): Do check size of object of integral type
+ * decl.c: (validate_size): Do check size of object of integral type
if it is a packed array type.
2001-10-10 Richard Kenner <kenner@gnat.com>
- * decl.c: (gnat_to_gnu_entity, case object): Also materialize
+ * decl.c: (gnat_to_gnu_entity, case object): Also materialize
VAR_DECL for constant if not Is_Public but -O0.
2001-10-10 Richard Kenner <kenner@gnat.com>
2001-10-10 Geert Bosch <bosch@gnat.com>
- * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
+ * xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
use '/' as switch character, allowing for absolute file names.
2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>