Commit bfc8aa81 by Robert Dewar Committed by Arnaud Charlet

fmap.adb: Put routines in alpha order

2006-10-31  Robert Dewar  <dewar@adacore.com>
	    Thomas Quinot  <quinot@adacore.com>
	    Arnaud Charlet  <charlet@adacore.com>

	* fmap.adb: Put routines in alpha order

	* g-boumai.ads: Remove redundant 'in' keywords

	* g-cgi.adb: Minor reformatting

	* g-cgi.ads: Remove redundant 'in' keywords

	* get_targ.adb: Put routines in alpha order

	* prj-attr.ads: Minor reformatting

	* s-atacco.ads: Minor reformatting

	* scn.adb: Put routines in alpha order

	* sinput-l.adb: Minor comment fix

	* sinput-p.adb: Minor comment fix

	* s-maccod.ads: Minor reformatting

	* s-memory.adb: Minor reformatting

	* s-htable.adb: Fix typo in comment.

	* s-secsta.adb: Minor comment update.

	* s-soflin.adb: Minor reformatting

	* s-stoele.ads: 
	Add comment about odd qualification in Storage_Offset declaration

	* s-strxdr.adb: 
	Remove unnecessary 'in' keywords for formal parameters.

	* treeprs.adt: Minor reformatting

	* urealp.adb: Put routines in alpha order

	* s-wchcon.ads, s-wchcon.adb (Get_WC_Encoding_Method): New version
	taking string.

	* s-asthan-vms-alpha.adb: Remove redundant 'in' keywords

	* g-trasym-vms-ia64.adb: Remove redundant 'in' keywords

	* env.c (__gnat_unsetenv): Unsetenv is unavailable on LynxOS, so
	workaround as on other platforms.

	* g-eacodu-vms.adb: Remove redundant 'in' keywords
	* g-expect-vms.adb: Remove redundant 'in' keywords

	* gnatdll.adb (Add_Files_From_List): Handle Name_Error and report a
	clear error message if the list-of-files file cannot be opened.

	* g-thread.adb (Unregister_Thread_Id): Add use type Thread_Id so the
	equality operator is always visible.

	* lang.opt: Woverlength-strings: New option.

	* nmake.adt: 
	Update copyright, since nmake.ads and nmake.adb have changed.

	* osint-b.ads, osint-b.adb (Time_From_Last_Bind): removed function .
	(Binder_Output_Time_Stamps_Set): removed.
	(Old_Binder_Output_Time_Stamp): idem.
	(New_Binder_Output_Time_Stamp): idem.
	(Recording_Time_From_Last_Bind): idem.
	(Recording_Time_From_Last_Bind): Make constant.

	* output.ads, output.adb (Write_Str): Allow LF characters
	(Write_Spaces): New procedure

	* prepcomp.adb (Preproc_Data_Table): Change Increment from 5% to 100%

	* inline.adb: Minor reformatting

	* s-asthan-vms-alpha.adb: Remove redundant 'in' keywords

	* s-mastop-vms.adb: Remove redundant 'in' keywords

	* s-osprim-vms.adb: Remove redundant 'in' keywords

	* s-trafor-default.adb: Remove redundant 'in' keywords

	* 9drpc.adb: Remove redundant 'in' keywords

	* s-osinte-mingw.ads: Minor reformatting

	* s-inmaop-posix.adb: Minor reformatting

	* a-direio.ads: Remove quotes from Compile_Time_Warning message

	* a-exexda.adb: Minor code reorganization

	* a-filico.adb: Minor reformatting

	* a-finali.adb: Minor reformatting

	* a-nudira.ads: Remove quote from Compile_Time_Warning message

	* a-numeri.ads: Minor reformatting

	* a-sequio.ads: Remove quotes from Compile_Time_Warning message

	* exp_pakd.ads: Fix obsolete comment

	* a-ztenau.adb, a-ztenio.adb, a-wtenau.adb, a-tienau.adb,
	a-wtenio.adb (Put): Avoid assuming low bound of string is 1.
	Probably not a bug, but certainly neater and more efficient.

	* a-tienio.adb: Minor reformatting

	* comperr.adb (Compiler_Abort): Call Cancel_Special_Output at start
	Avoid assuming low bound of string is 1.

	* gnatbind.adb: Change Bindusg to package and rename procedure as
	Display, which now ensures that it only outputs usage information once.
	(Scan_Bind_Arg): Avoid assuming low bound of string is 1.

	* g-pehage.adb (Build_Identical_Keysets): Replace use of 1 by
	Table'First.

	* g-regpat.adb (Insert_Operator): Add pragma Warnings (Off) to kill
	warning.
	(Match): Add pragma Assert to ensure that Matches'First is zero

	* g-regpat.ads (Match): Document that Matches lower bound must be zero

	* makeutl.adb (Is_External_Assignment): Add pragma Assert's to check
	documented preconditions (also kills warnings about bad indexes).

	* mdll.adb (Build_Dynamic_Library): Avoid assumption that Afiles'First
	is 1.
	(Build_Import_Library): Ditto;

	* mdll-utl.adb: (Gnatbind): Avoid assumption that Alis'First = 1

	* rtsfind.adb (RTE_Error_Msg): Avoid assuming low bound of string is 1.

	* sem_case.adb (Analyze_Choices): Add pragma Assert to check that
	lower bound of choice table is 1.

	* sem_case.ads (Analyze_Choices): Document that lower bound of
	Choice_Table is 1.

	* s-imgdec.adb (Set_Decimal_Digits): Avoid assuming low bound of
	string is 1.

	* uintp.adb (Init_Operand): Document that low bound of Vec is always 1,
	and add appropriate Assert pragma to suppress warnings.

	* atree.h, atree.ads, atree.adb
	Change Elist24 to Elist25
	Add definitions of Field28 and Node28
	(Traverse_Field): Use new syntactic parent table in sinfo.

	* cstand.adb: Change name Is_Ada_2005 to Is_Ada_2005_Only

	* itypes.adb: Change name Is_Ada_2005 to Is_Ada_2005_Only

	* exp_tss.adb: Put routines in alpha order

	* fe.h: Remove redundant declarations.

From-SVN: r118330
parent e0ae4e94
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2004 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006 Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -93,11 +93,11 @@ package body System.RPC is ...@@ -93,11 +93,11 @@ package body System.RPC is
task type Anonymous_Task_Type (Self : Anonymous_Task_Node_Access) is task type Anonymous_Task_Type (Self : Anonymous_Task_Node_Access) is
entry Start entry Start
(Message_Id : in Message_Id_Type; (Message_Id : Message_Id_Type;
Partition : in Partition_ID; Partition : Partition_ID;
Params_Size : in Ada.Streams.Stream_Element_Count; Params_Size : Ada.Streams.Stream_Element_Count;
Result_Size : in Ada.Streams.Stream_Element_Count; Result_Size : Ada.Streams.Stream_Element_Count;
Protocol : in Garlic.Protocol_Access); Protocol : Garlic.Protocol_Access);
-- This entry provides an anonymous task a remote call to perform. -- This entry provides an anonymous task a remote call to perform.
-- This task calls for a Request id is provided to construct the -- This task calls for a Request id is provided to construct the
-- reply id by using -Request. Partition is used to send the reply -- reply id by using -Request. Partition is used to send the reply
...@@ -153,8 +153,8 @@ package body System.RPC is ...@@ -153,8 +153,8 @@ package body System.RPC is
-- When it is resumed, we provide the size of the reply -- When it is resumed, we provide the size of the reply
entry Wake_Up entry Wake_Up
(Request : in Request_Id_Type; (Request : Request_Id_Type;
Length : in Ada.Streams.Stream_Element_Count); Length : Ada.Streams.Stream_Element_Count);
-- To wake up the calling stub when the environnement task has -- To wake up the calling stub when the environnement task has
-- received a reply for this request -- received a reply for this request
...@@ -198,7 +198,7 @@ package body System.RPC is ...@@ -198,7 +198,7 @@ package body System.RPC is
-- Debugging package -- Debugging package
procedure D procedure D
(Flag : in Debug_Level; Info : in String) renames Debugging.Debug; (Flag : Debug_Level; Info : String) renames Debugging.Debug;
-- Shortcut -- Shortcut
------------------------ ------------------------
...@@ -265,7 +265,7 @@ package body System.RPC is ...@@ -265,7 +265,7 @@ package body System.RPC is
-- Null_Node -- -- Null_Node --
--------------- ---------------
function Null_Node (Index : in Packet_Node_Access) return Boolean is function Null_Node (Index : Packet_Node_Access) return Boolean is
begin begin
return Index = null; return Index = null;
...@@ -375,7 +375,7 @@ package body System.RPC is ...@@ -375,7 +375,7 @@ package body System.RPC is
procedure Write procedure Write
(Stream : in out Params_Stream_Type; (Stream : in out Params_Stream_Type;
Item : in Ada.Streams.Stream_Element_Array) Item : Ada.Streams.Stream_Element_Array)
renames System.RPC.Streams.Write; renames System.RPC.Streams.Write;
----------------------- -----------------------
...@@ -687,8 +687,8 @@ package body System.RPC is ...@@ -687,8 +687,8 @@ package body System.RPC is
---------------------------- ----------------------------
procedure Establish_RPC_Receiver procedure Establish_RPC_Receiver
(Partition : in Partition_ID; (Partition : Partition_ID;
Receiver : in RPC_Receiver) Receiver : RPC_Receiver)
is is
begin begin
-- Set Partition_RPC_Receiver and allow RPC mechanism -- Set Partition_RPC_Receiver and allow RPC mechanism
...@@ -799,11 +799,11 @@ package body System.RPC is ...@@ -799,11 +799,11 @@ package body System.RPC is
select select
accept Start accept Start
(Message_Id : in Message_Id_Type; (Message_Id : Message_Id_Type;
Partition : in Partition_ID; Partition : Partition_ID;
Params_Size : in Ada.Streams.Stream_Element_Count; Params_Size : Ada.Streams.Stream_Element_Count;
Result_Size : in Ada.Streams.Stream_Element_Count; Result_Size : Ada.Streams.Stream_Element_Count;
Protocol : in Protocol_Access) Protocol : Protocol_Access)
do do
C_Message_Id := Message_Id; C_Message_Id := Message_Id;
C_Partition := Partition; C_Partition := Partition;
......
...@@ -46,7 +46,7 @@ package Ada.Direct_IO is ...@@ -46,7 +46,7 @@ package Ada.Direct_IO is
pragma Compile_Time_Warning pragma Compile_Time_Warning
(Element_Type'Has_Access_Values, (Element_Type'Has_Access_Values,
"?Element_Type for Direct_'I'O instance has access values"); "Element_Type for Direct_IO instance has access values");
type File_Type is limited private; type File_Type is limited private;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -407,10 +407,13 @@ package body Exception_Data is ...@@ -407,10 +407,13 @@ package body Exception_Data is
----------------------------------------- -----------------------------------------
function Basic_Exception_Tback_Maxlength function Basic_Exception_Tback_Maxlength
(X : Exception_Occurrence) return Natural is (X : Exception_Occurrence) return Natural
is
Space_Per_Traceback : constant := 2 + 16 + 1;
-- Space for "0x" + HHHHHHHHHHHHHHHH + " "
begin begin
return BETB_Header'Length + 1 + X.Num_Tracebacks * 19 + 1; return BETB_Header'Length + 1 +
-- 19 = 2 + 16 + 1 for each address ("0x" + HHHH + " ") X.Num_Tracebacks * Space_Per_Traceback + 1;
end Basic_Exception_Tback_Maxlength; end Basic_Exception_Tback_Maxlength;
--------------------------------------- ---------------------------------------
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2001 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -50,7 +50,6 @@ package body Ada.Finalization is ...@@ -50,7 +50,6 @@ package body Ada.Finalization is
procedure Adjust (Object : in out Controlled) is procedure Adjust (Object : in out Controlled) is
pragma Warnings (Off, Object); pragma Warnings (Off, Object);
begin begin
null; null;
end Adjust; end Adjust;
...@@ -61,14 +60,12 @@ package body Ada.Finalization is ...@@ -61,14 +60,12 @@ package body Ada.Finalization is
procedure Finalize (Object : in out Controlled) is procedure Finalize (Object : in out Controlled) is
pragma Warnings (Off, Object); pragma Warnings (Off, Object);
begin begin
null; null;
end Finalize; end Finalize;
procedure Finalize (Object : in out Limited_Controlled) is procedure Finalize (Object : in out Limited_Controlled) is
pragma Warnings (Off, Object); pragma Warnings (Off, Object);
begin begin
null; null;
end Finalize; end Finalize;
...@@ -79,14 +76,12 @@ package body Ada.Finalization is ...@@ -79,14 +76,12 @@ package body Ada.Finalization is
procedure Initialize (Object : in out Controlled) is procedure Initialize (Object : in out Controlled) is
pragma Warnings (Off, Object); pragma Warnings (Off, Object);
begin begin
null; null;
end Initialize; end Initialize;
procedure Initialize (Object : in out Limited_Controlled) is procedure Initialize (Object : in out Limited_Controlled) is
pragma Warnings (Off, Object); pragma Warnings (Off, Object);
begin begin
null; null;
end Initialize; end Initialize;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- This specification is derived from the Ada Reference Manual for use with -- -- This specification is derived from the Ada Reference Manual for use with --
-- GNAT. The copyright notice above, and the license provisions that follow -- -- GNAT. The copyright notice above, and the license provisions that follow --
...@@ -58,7 +58,7 @@ package Ada.Numerics.Discrete_Random is ...@@ -58,7 +58,7 @@ package Ada.Numerics.Discrete_Random is
pragma Compile_Time_Warning pragma Compile_Time_Warning
(Result_Subtype'Size > 48, (Result_Subtype'Size > 48,
"statistical properties not guaranteed for size '> 48"); "statistical properties not guaranteed for size > 48");
-- Basic facilities -- Basic facilities
......
...@@ -23,8 +23,8 @@ package Ada.Numerics is ...@@ -23,8 +23,8 @@ package Ada.Numerics is
["03C0"] : constant := Pi; ["03C0"] : constant := Pi;
-- This is the greek letter Pi (for Ada 2005 AI-388). Note that it is -- This is the greek letter Pi (for Ada 2005 AI-388). Note that it is
-- conforming to have this present even in Ada 95 mode, because there is -- conforming to have this constant present even in Ada 95 mode, as there
-- no way for a normal mode Ada 95 program to reference this identifier. -- is no way for a normal mode Ada 95 program to reference this identifier.
e : constant := e : constant :=
2.71828_18284_59045_23536_02874_71352_66249_77572_47093_69996; 2.71828_18284_59045_23536_02874_71352_66249_77572_47093_69996;
......
...@@ -46,7 +46,7 @@ package Ada.Sequential_IO is ...@@ -46,7 +46,7 @@ package Ada.Sequential_IO is
pragma Compile_Time_Warning pragma Compile_Time_Warning
(Element_Type'Has_Access_Values, (Element_Type'Has_Access_Values,
"?Element_Type for Sequential_'I'O instance has access values"); "Element_Type for Sequential_IO instance has access values");
type File_Type is limited private; type File_Type is limited private;
......
...@@ -128,7 +128,7 @@ package body Ada.Text_IO.Enumeration_Aux is ...@@ -128,7 +128,7 @@ package body Ada.Text_IO.Enumeration_Aux is
Actual_Width : constant Count := Count'Max (Count (Width), Item'Length); Actual_Width : constant Count := Count'Max (Count (Width), Item'Length);
begin begin
if Set = Lower_Case and then Item (1) /= ''' then if Set = Lower_Case and then Item (Item'First) /= ''' then
declare declare
Iteml : String (Item'First .. Item'Last); Iteml : String (Item'First .. Item'Last);
...@@ -167,7 +167,7 @@ package body Ada.Text_IO.Enumeration_Aux is ...@@ -167,7 +167,7 @@ package body Ada.Text_IO.Enumeration_Aux is
else else
Ptr := To'First; Ptr := To'First;
for J in Item'Range loop for J in Item'Range loop
if Set = Lower_Case and then Item (1) /= ''' then if Set = Lower_Case and then Item (Item'First) /= ''' then
To (Ptr) := To_Lower (Item (J)); To (Ptr) := To_Lower (Item (J));
else else
To (Ptr) := Item (J); To (Ptr) := Item (J);
......
...@@ -61,7 +61,6 @@ package body Ada.Text_IO.Enumeration_IO is ...@@ -61,7 +61,6 @@ package body Ada.Text_IO.Enumeration_IO is
procedure Get (Item : out Enum) is procedure Get (Item : out Enum) is
pragma Unsuppress (Range_Check); pragma Unsuppress (Range_Check);
begin begin
Get (Current_In, Item); Get (Current_In, Item);
end Get; end Get;
...@@ -98,7 +97,6 @@ package body Ada.Text_IO.Enumeration_IO is ...@@ -98,7 +97,6 @@ package body Ada.Text_IO.Enumeration_IO is
Set : Type_Set := Default_Setting) Set : Type_Set := Default_Setting)
is is
Image : constant String := Enum'Image (Item); Image : constant String := Enum'Image (Item);
begin begin
Aux.Put (File, Image, Width, Set); Aux.Put (File, Image, Width, Set);
end Put; end Put;
...@@ -118,7 +116,6 @@ package body Ada.Text_IO.Enumeration_IO is ...@@ -118,7 +116,6 @@ package body Ada.Text_IO.Enumeration_IO is
Set : Type_Set := Default_Setting) Set : Type_Set := Default_Setting)
is is
Image : constant String := Enum'Image (Item); Image : constant String := Enum'Image (Item);
begin begin
Aux.Puts (To, Image, Set); Aux.Puts (To, Image, Set);
end Put; end Put;
......
...@@ -159,7 +159,7 @@ package body Ada.Wide_Text_IO.Enumeration_Aux is ...@@ -159,7 +159,7 @@ package body Ada.Wide_Text_IO.Enumeration_Aux is
begin begin
Check_On_One_Line (TFT (File), Actual_Width); Check_On_One_Line (TFT (File), Actual_Width);
if Set = Lower_Case and then Item (1) /= ''' then if Set = Lower_Case and then Item (Item'First) /= ''' then
declare declare
Iteml : Wide_String (Item'First .. Item'Last); Iteml : Wide_String (Item'First .. Item'Last);
...@@ -204,7 +204,7 @@ package body Ada.Wide_Text_IO.Enumeration_Aux is ...@@ -204,7 +204,7 @@ package body Ada.Wide_Text_IO.Enumeration_Aux is
Ptr := To'First; Ptr := To'First;
for J in Item'Range loop for J in Item'Range loop
if Set = Lower_Case if Set = Lower_Case
and then Item (1) /= ''' and then Item (Item'First) /= '''
and then Is_Character (Item (J)) and then Is_Character (Item (J))
then then
To (Ptr) := To (Ptr) :=
......
...@@ -160,7 +160,7 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_Aux is ...@@ -160,7 +160,7 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_Aux is
begin begin
Check_On_One_Line (TFT (File), Actual_Width); Check_On_One_Line (TFT (File), Actual_Width);
if Set = Lower_Case and then Item (1) /= ''' then if Set = Lower_Case and then Item (Item'First) /= ''' then
declare declare
Iteml : Wide_Wide_String (Item'First .. Item'Last); Iteml : Wide_Wide_String (Item'First .. Item'Last);
...@@ -206,7 +206,7 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_Aux is ...@@ -206,7 +206,7 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_Aux is
Ptr := To'First; Ptr := To'First;
for J in Item'Range loop for J in Item'Range loop
if Set = Lower_Case if Set = Lower_Case
and then Item (1) /= ''' and then Item (Item'First) /= '''
and then Is_Character (Item (J)) and then Is_Character (Item (J))
then then
To (Ptr) := To (Ptr) :=
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -44,11 +44,9 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_IO is ...@@ -44,11 +44,9 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_IO is
procedure Get (File : File_Type; Item : out Enum) is procedure Get (File : File_Type; Item : out Enum) is
Buf : Wide_Wide_String (1 .. Enum'Width); Buf : Wide_Wide_String (1 .. Enum'Width);
Buflen : Natural; Buflen : Natural;
begin begin
Aux.Get_Enum_Lit (File, Buf, Buflen); Aux.Get_Enum_Lit (File, Buf, Buflen);
Item := Enum'Wide_Wide_Value (Buf (1 .. Buflen)); Item := Enum'Wide_Wide_Value (Buf (1 .. Buflen));
exception exception
when Constraint_Error => raise Data_Error; when Constraint_Error => raise Data_Error;
end Get; end Get;
...@@ -64,11 +62,9 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_IO is ...@@ -64,11 +62,9 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_IO is
Last : out Positive) Last : out Positive)
is is
Start : Natural; Start : Natural;
begin begin
Aux.Scan_Enum_Lit (From, Start, Last); Aux.Scan_Enum_Lit (From, Start, Last);
Item := Enum'Wide_Wide_Value (From (Start .. Last)); Item := Enum'Wide_Wide_Value (From (Start .. Last));
exception exception
when Constraint_Error => raise Data_Error; when Constraint_Error => raise Data_Error;
end Get; end Get;
...@@ -84,7 +80,6 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_IO is ...@@ -84,7 +80,6 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_IO is
Set : Type_Set := Default_Setting) Set : Type_Set := Default_Setting)
is is
Image : constant Wide_Wide_String := Enum'Wide_Wide_Image (Item); Image : constant Wide_Wide_String := Enum'Wide_Wide_Image (Item);
begin begin
Aux.Put (File, Image, Width, Set); Aux.Put (File, Image, Width, Set);
end Put; end Put;
...@@ -104,7 +99,6 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_IO is ...@@ -104,7 +99,6 @@ package body Ada.Wide_Wide_Text_IO.Enumeration_IO is
Set : Type_Set := Default_Setting) Set : Type_Set := Default_Setting)
is is
Image : constant Wide_Wide_String := Enum'Wide_Wide_Image (Item); Image : constant Wide_Wide_String := Enum'Wide_Wide_Image (Item);
begin begin
Aux.Puts (To, Image, Set); Aux.Puts (To, Image, Set);
end Put; end Put;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -2360,17 +2360,24 @@ package body Atree is ...@@ -2360,17 +2360,24 @@ package body Atree is
function Traverse_Func (Node : Node_Id) return Traverse_Result is function Traverse_Func (Node : Node_Id) return Traverse_Result is
function Traverse_Field (Fld : Union_Id) return Traverse_Result; function Traverse_Field
-- Fld is one of the fields of Node. If the field points to a (Nod : Node_Id;
-- syntactic node or list, then this node or list is traversed, Fld : Union_Id;
-- and the result is the result of this traversal. Otherwise FN : Field_Num) return Traverse_Result;
-- a value of True is returned with no processing. -- Fld is one of the fields of Nod. If the field points to syntactic
-- node or list, then this node or list is traversed, and the result is
-- the result of this traversal. Otherwise a value of True is returned
-- with no processing. FN is the number of the field (1 .. 5).
-------------------- --------------------
-- Traverse_Field -- -- Traverse_Field --
-------------------- --------------------
function Traverse_Field (Fld : Union_Id) return Traverse_Result is function Traverse_Field
(Nod : Node_Id;
Fld : Union_Id;
FN : Field_Num) return Traverse_Result
is
begin begin
if Fld = Union_Id (Empty) then if Fld = Union_Id (Empty) then
return OK; return OK;
...@@ -2381,9 +2388,7 @@ package body Atree is ...@@ -2381,9 +2388,7 @@ package body Atree is
-- Traverse descendent that is syntactic subtree node -- Traverse descendent that is syntactic subtree node
if Parent (Node_Id (Fld)) = Node if Is_Syntactic_Field (Nkind (Nod), FN) then
or else Original_Node (Parent (Node_Id (Fld))) = Node
then
return Traverse_Func (Node_Id (Fld)); return Traverse_Func (Node_Id (Fld));
-- Node that is not a syntactic subtree -- Node that is not a syntactic subtree
...@@ -2398,9 +2403,7 @@ package body Atree is ...@@ -2398,9 +2403,7 @@ package body Atree is
-- Traverse descendent that is a syntactic subtree list -- Traverse descendent that is a syntactic subtree list
if Parent (List_Id (Fld)) = Node if Is_Syntactic_Field (Nkind (Nod), FN) then
or else Original_Node (Parent (List_Id (Fld))) = Node
then
declare declare
Elmt : Node_Id := First (List_Id (Fld)); Elmt : Node_Id := First (List_Id (Fld));
begin begin
...@@ -2439,39 +2442,36 @@ package body Atree is ...@@ -2439,39 +2442,36 @@ package body Atree is
return OK; return OK;
when OK => when OK =>
if Traverse_Field (Union_Id (Field1 (Node))) = Abandon if Traverse_Field (Node, Union_Id (Field1 (Node)), 1) = Abandon
or else or else
Traverse_Field (Union_Id (Field2 (Node))) = Abandon Traverse_Field (Node, Union_Id (Field2 (Node)), 2) = Abandon
or else or else
Traverse_Field (Union_Id (Field3 (Node))) = Abandon Traverse_Field (Node, Union_Id (Field3 (Node)), 3) = Abandon
or else or else
Traverse_Field (Union_Id (Field4 (Node))) = Abandon Traverse_Field (Node, Union_Id (Field4 (Node)), 4) = Abandon
or else or else
Traverse_Field (Union_Id (Field5 (Node))) = Abandon Traverse_Field (Node, Union_Id (Field5 (Node)), 5) = Abandon
then then
return Abandon; return Abandon;
else else
return OK; return OK;
end if; end if;
when OK_Orig => when OK_Orig =>
declare declare
Onode : constant Node_Id := Original_Node (Node); Onod : constant Node_Id := Original_Node (Node);
begin begin
if Traverse_Field (Union_Id (Field1 (Onode))) = Abandon if Traverse_Field (Onod, Union_Id (Field1 (Onod)), 1) = Abandon
or else or else
Traverse_Field (Union_Id (Field2 (Onode))) = Abandon Traverse_Field (Onod, Union_Id (Field2 (Onod)), 2) = Abandon
or else or else
Traverse_Field (Union_Id (Field3 (Onode))) = Abandon Traverse_Field (Onod, Union_Id (Field3 (Onod)), 3) = Abandon
or else or else
Traverse_Field (Union_Id (Field4 (Onode))) = Abandon Traverse_Field (Onod, Union_Id (Field4 (Onod)), 4) = Abandon
or else or else
Traverse_Field (Union_Id (Field5 (Onode))) = Abandon Traverse_Field (Onod, Union_Id (Field5 (Onod)), 5) = Abandon
then then
return Abandon; return Abandon;
else else
return OK_Orig; return OK_Orig;
end if; end if;
...@@ -2681,6 +2681,12 @@ package body Atree is ...@@ -2681,6 +2681,12 @@ package body Atree is
return Nodes.Table (N + 4).Field9; return Nodes.Table (N + 4).Field9;
end Field27; end Field27;
function Field28 (N : Node_Id) return Union_Id is
begin
pragma Assert (Nkind (N) in N_Entity);
return Nodes.Table (N + 4).Field10;
end Field28;
function Node1 (N : Node_Id) return Node_Id is function Node1 (N : Node_Id) return Node_Id is
begin begin
pragma Assert (N in Nodes.First .. Nodes.Last); pragma Assert (N in Nodes.First .. Nodes.Last);
...@@ -2843,6 +2849,12 @@ package body Atree is ...@@ -2843,6 +2849,12 @@ package body Atree is
return Node_Id (Nodes.Table (N + 4).Field9); return Node_Id (Nodes.Table (N + 4).Field9);
end Node27; end Node27;
function Node28 (N : Node_Id) return Node_Id is
begin
pragma Assert (Nkind (N) in N_Entity);
return Node_Id (Nodes.Table (N + 4).Field10);
end Node28;
function List1 (N : Node_Id) return List_Id is function List1 (N : Node_Id) return List_Id is
begin begin
pragma Assert (N in Nodes.First .. Nodes.Last); pragma Assert (N in Nodes.First .. Nodes.Last);
...@@ -2995,16 +3007,16 @@ package body Atree is ...@@ -2995,16 +3007,16 @@ package body Atree is
end if; end if;
end Elist23; end Elist23;
function Elist24 (N : Node_Id) return Elist_Id is function Elist25 (N : Node_Id) return Elist_Id is
pragma Assert (Nkind (N) in N_Entity); pragma Assert (Nkind (N) in N_Entity);
Value : constant Union_Id := Nodes.Table (N + 4).Field6; Value : constant Union_Id := Nodes.Table (N + 4).Field7;
begin begin
if Value = 0 then if Value = 0 then
return No_Elist; return No_Elist;
else else
return Elist_Id (Value); return Elist_Id (Value);
end if; end if;
end Elist24; end Elist25;
function Name1 (N : Node_Id) return Name_Id is function Name1 (N : Node_Id) return Name_Id is
begin begin
...@@ -4647,6 +4659,12 @@ package body Atree is ...@@ -4647,6 +4659,12 @@ package body Atree is
Nodes.Table (N + 4).Field9 := Val; Nodes.Table (N + 4).Field9 := Val;
end Set_Field27; end Set_Field27;
procedure Set_Field28 (N : Node_Id; Val : Union_Id) is
begin
pragma Assert (Nkind (N) in N_Entity);
Nodes.Table (N + 4).Field10 := Val;
end Set_Field28;
procedure Set_Node1 (N : Node_Id; Val : Node_Id) is procedure Set_Node1 (N : Node_Id; Val : Node_Id) is
begin begin
pragma Assert (N in Nodes.First .. Nodes.Last); pragma Assert (N in Nodes.First .. Nodes.Last);
...@@ -4809,6 +4827,12 @@ package body Atree is ...@@ -4809,6 +4827,12 @@ package body Atree is
Nodes.Table (N + 4).Field9 := Union_Id (Val); Nodes.Table (N + 4).Field9 := Union_Id (Val);
end Set_Node27; end Set_Node27;
procedure Set_Node28 (N : Node_Id; Val : Node_Id) is
begin
pragma Assert (Nkind (N) in N_Entity);
Nodes.Table (N + 4).Field10 := Union_Id (Val);
end Set_Node28;
procedure Set_List1 (N : Node_Id; Val : List_Id) is procedure Set_List1 (N : Node_Id; Val : List_Id) is
begin begin
pragma Assert (N in Nodes.First .. Nodes.Last); pragma Assert (N in Nodes.First .. Nodes.Last);
...@@ -4908,11 +4932,11 @@ package body Atree is ...@@ -4908,11 +4932,11 @@ package body Atree is
Nodes.Table (N + 3).Field10 := Union_Id (Val); Nodes.Table (N + 3).Field10 := Union_Id (Val);
end Set_Elist23; end Set_Elist23;
procedure Set_Elist24 (N : Node_Id; Val : Elist_Id) is procedure Set_Elist25 (N : Node_Id; Val : Elist_Id) is
begin begin
pragma Assert (Nkind (N) in N_Entity); pragma Assert (Nkind (N) in N_Entity);
Nodes.Table (N + 4).Field6 := Union_Id (Val); Nodes.Table (N + 4).Field7 := Union_Id (Val);
end Set_Elist24; end Set_Elist25;
procedure Set_Name1 (N : Node_Id; Val : Name_Id) is procedure Set_Name1 (N : Node_Id; Val : Name_Id) is
begin begin
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -49,7 +49,7 @@ package Atree is ...@@ -49,7 +49,7 @@ package Atree is
-- this tree. There is no separate symbol table structure. -- this tree. There is no separate symbol table structure.
-- WARNING: There is a C version of this package. Any changes to this -- WARNING: There is a C version of this package. Any changes to this
-- source file must be properly reflected in the C header file tree.h -- source file must be properly reflected in the C header file atree.h
-- Package Atree defines the basic structure of the tree and its nodes and -- Package Atree defines the basic structure of the tree and its nodes and
-- provides the basic abstract interface for manipulating the tree. Two -- provides the basic abstract interface for manipulating the tree. Two
...@@ -198,8 +198,8 @@ package Atree is ...@@ -198,8 +198,8 @@ package Atree is
-- Elist6 Synonym for Field6 typed as Elist_Id (Empty = No_Elist) -- Elist6 Synonym for Field6 typed as Elist_Id (Empty = No_Elist)
-- Uint6 Synonym for Field6 typed as Uint (Empty = Uint_0) -- Uint6 Synonym for Field6 typed as Uint (Empty = Uint_0)
-- Similar definitions for Field7 to Field27 (and Node7-Node27, -- Similar definitions for Field7 to Field28 (and Node7-Node28,
-- Elist7-Elist27, Uint7-Uint27, Ureal7-Ureal27). Note that not all -- Elist7-Elist28, Uint7-Uint28, Ureal7-Ureal28). Note that not all
-- these functions are defined, only the ones that are actually used. -- these functions are defined, only the ones that are actually used.
type Paren_Count_Type is mod 4; type Paren_Count_Type is mod 4;
...@@ -434,9 +434,9 @@ package Atree is ...@@ -434,9 +434,9 @@ package Atree is
function New_Copy_Tree function New_Copy_Tree
(Source : Node_Id; (Source : Node_Id;
Map : Elist_Id := No_Elist; Map : Elist_Id := No_Elist;
New_Sloc : Source_Ptr := No_Location; New_Sloc : Source_Ptr := No_Location;
New_Scope : Entity_Id := Empty) return Node_Id; New_Scope : Entity_Id := Empty) return Node_Id;
-- Given a node that is the root of a subtree, Copy_Tree copies the entire -- Given a node that is the root of a subtree, Copy_Tree copies the entire
-- syntactic subtree, including recursively any descendents whose parent -- syntactic subtree, including recursively any descendents whose parent
-- field references a copied node (descendents not linked to a copied node -- field references a copied node (descendents not linked to a copied node
...@@ -860,6 +860,9 @@ package Atree is ...@@ -860,6 +860,9 @@ package Atree is
function Field27 (N : Node_Id) return Union_Id; function Field27 (N : Node_Id) return Union_Id;
pragma Inline (Field27); pragma Inline (Field27);
function Field28 (N : Node_Id) return Union_Id;
pragma Inline (Field28);
function Node1 (N : Node_Id) return Node_Id; function Node1 (N : Node_Id) return Node_Id;
pragma Inline (Node1); pragma Inline (Node1);
...@@ -941,6 +944,9 @@ package Atree is ...@@ -941,6 +944,9 @@ package Atree is
function Node27 (N : Node_Id) return Node_Id; function Node27 (N : Node_Id) return Node_Id;
pragma Inline (Node27); pragma Inline (Node27);
function Node28 (N : Node_Id) return Node_Id;
pragma Inline (Node28);
function List1 (N : Node_Id) return List_Id; function List1 (N : Node_Id) return List_Id;
pragma Inline (List1); pragma Inline (List1);
...@@ -992,8 +998,8 @@ package Atree is ...@@ -992,8 +998,8 @@ package Atree is
function Elist23 (N : Node_Id) return Elist_Id; function Elist23 (N : Node_Id) return Elist_Id;
pragma Inline (Elist23); pragma Inline (Elist23);
function Elist24 (N : Node_Id) return Elist_Id; function Elist25 (N : Node_Id) return Elist_Id;
pragma Inline (Elist24); pragma Inline (Elist25);
function Name1 (N : Node_Id) return Name_Id; function Name1 (N : Node_Id) return Name_Id;
pragma Inline (Name1); pragma Inline (Name1);
...@@ -1785,6 +1791,9 @@ package Atree is ...@@ -1785,6 +1791,9 @@ package Atree is
procedure Set_Field27 (N : Node_Id; Val : Union_Id); procedure Set_Field27 (N : Node_Id; Val : Union_Id);
pragma Inline (Set_Field27); pragma Inline (Set_Field27);
procedure Set_Field28 (N : Node_Id; Val : Union_Id);
pragma Inline (Set_Field28);
procedure Set_Node1 (N : Node_Id; Val : Node_Id); procedure Set_Node1 (N : Node_Id; Val : Node_Id);
pragma Inline (Set_Node1); pragma Inline (Set_Node1);
...@@ -1866,6 +1875,9 @@ package Atree is ...@@ -1866,6 +1875,9 @@ package Atree is
procedure Set_Node27 (N : Node_Id; Val : Node_Id); procedure Set_Node27 (N : Node_Id; Val : Node_Id);
pragma Inline (Set_Node27); pragma Inline (Set_Node27);
procedure Set_Node28 (N : Node_Id; Val : Node_Id);
pragma Inline (Set_Node28);
procedure Set_List1 (N : Node_Id; Val : List_Id); procedure Set_List1 (N : Node_Id; Val : List_Id);
pragma Inline (Set_List1); pragma Inline (Set_List1);
...@@ -1917,8 +1929,8 @@ package Atree is ...@@ -1917,8 +1929,8 @@ package Atree is
procedure Set_Elist23 (N : Node_Id; Val : Elist_Id); procedure Set_Elist23 (N : Node_Id; Val : Elist_Id);
pragma Inline (Set_Elist23); pragma Inline (Set_Elist23);
procedure Set_Elist24 (N : Node_Id; Val : Elist_Id); procedure Set_Elist25 (N : Node_Id; Val : Elist_Id);
pragma Inline (Set_Elist24); pragma Inline (Set_Elist25);
procedure Set_Name1 (N : Node_Id; Val : Name_Id); procedure Set_Name1 (N : Node_Id; Val : Name_Id);
pragma Inline (Set_Name1); pragma Inline (Set_Name1);
...@@ -2832,8 +2844,7 @@ package Atree is ...@@ -2832,8 +2844,7 @@ package Atree is
-- above is used to hold additional general fields and flags -- above is used to hold additional general fields and flags
-- as follows: -- as follows:
-- Field6-9 Holds Field24-Field27 -- Field6-10 Holds Field24-Field28
-- Field10 currently unused, reserved for expansion
-- Field11 Holds Flag184-Flag215 -- Field11 Holds Flag184-Flag215
-- Field12 currently unused, reserved for expansion -- Field12 currently unused, reserved for expansion
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* * * *
* C Header File * * C Header File *
* * * *
* Copyright (C) 1992-2005, Free Software Foundation, Inc. * * Copyright (C) 1992-2006, Free Software Foundation, Inc. *
* * * *
* GNAT is free software; you can redistribute it and/or modify it under * * GNAT is free software; you can redistribute it and/or modify it under *
* terms of the GNU General Public License as published by the Free Soft- * * terms of the GNU General Public License as published by the Free Soft- *
...@@ -382,6 +382,7 @@ extern Node_Id Current_Error_Node; ...@@ -382,6 +382,7 @@ extern Node_Id Current_Error_Node;
#define Field25(N) (Nodes_Ptr[(N) - First_Node_Id + 4].V.EX.field7) #define Field25(N) (Nodes_Ptr[(N) - First_Node_Id + 4].V.EX.field7)
#define Field26(N) (Nodes_Ptr[(N) - First_Node_Id + 4].V.EX.field8) #define Field26(N) (Nodes_Ptr[(N) - First_Node_Id + 4].V.EX.field8)
#define Field27(N) (Nodes_Ptr[(N) - First_Node_Id + 4].V.EX.field9) #define Field27(N) (Nodes_Ptr[(N) - First_Node_Id + 4].V.EX.field9)
#define Field28(N) (Nodes_Ptr[(N) - First_Node_Id + 4].V.EX.field10)
#define Node1(N) Field1 (N) #define Node1(N) Field1 (N)
#define Node2(N) Field2 (N) #define Node2(N) Field2 (N)
...@@ -410,6 +411,7 @@ extern Node_Id Current_Error_Node; ...@@ -410,6 +411,7 @@ extern Node_Id Current_Error_Node;
#define Node25(N) Field25 (N) #define Node25(N) Field25 (N)
#define Node26(N) Field26 (N) #define Node26(N) Field26 (N)
#define Node27(N) Field27 (N) #define Node27(N) Field27 (N)
#define Node28(N) Field28 (N)
#define List1(N) Field1 (N) #define List1(N) Field1 (N)
#define List2(N) Field2 (N) #define List2(N) Field2 (N)
...@@ -429,7 +431,7 @@ extern Node_Id Current_Error_Node; ...@@ -429,7 +431,7 @@ extern Node_Id Current_Error_Node;
#define Elist18(N) Field18 (N) #define Elist18(N) Field18 (N)
#define Elist21(N) Field21 (N) #define Elist21(N) Field21 (N)
#define Elist23(N) Field23 (N) #define Elist23(N) Field23 (N)
#define Elist24(N) Field24 (N) #define Elist25(N) Field25 (N)
#define Name1(N) Field1 (N) #define Name1(N) Field1 (N)
#define Name2(N) Field2 (N) #define Name2(N) Field2 (N)
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -80,6 +80,9 @@ package body Comperr is ...@@ -80,6 +80,9 @@ package body Comperr is
-- the FSF version of GNAT, but there are specializations for -- the FSF version of GNAT, but there are specializations for
-- the GNATPRO and Public releases by AdaCore. -- the GNATPRO and Public releases by AdaCore.
XF : constant Positive := X'First;
-- Start index, usually 1, but we won't assume this
procedure End_Line; procedure End_Line;
-- Add blanks up to column 76, and then a final vertical bar -- Add blanks up to column 76, and then a final vertical bar
...@@ -93,12 +96,14 @@ package body Comperr is ...@@ -93,12 +96,14 @@ package body Comperr is
Write_Eol; Write_Eol;
end End_Line; end End_Line;
Is_Public_Version : constant Boolean := Get_Gnat_Build_Type = Public; Is_GPL_Version : constant Boolean := Get_Gnat_Build_Type = GPL;
Is_FSF_Version : constant Boolean := Get_Gnat_Build_Type = FSF; Is_FSF_Version : constant Boolean := Get_Gnat_Build_Type = FSF;
-- Start of processing for Compiler_Abort -- Start of processing for Compiler_Abort
begin begin
Cancel_Special_Output;
-- Prevent recursion through Compiler_Abort, e.g. via SIGSEGV -- Prevent recursion through Compiler_Abort, e.g. via SIGSEGV
if Abort_In_Progress then if Abort_In_Progress then
...@@ -173,16 +178,16 @@ package body Comperr is ...@@ -173,16 +178,16 @@ package body Comperr is
Last_Blank : Integer := 70; Last_Blank : Integer := 70;
begin begin
for P in 40 .. 69 loop for P in 39 .. 68 loop
if X (P) = ' ' then if X (XF + P) = ' ' then
Last_Blank := P; Last_Blank := P;
end if; end if;
end loop; end loop;
Write_Str (X (1 .. Last_Blank)); Write_Str (X (XF .. XF - 1 + Last_Blank));
End_Line; End_Line;
Write_Str ("| "); Write_Str ("| ");
Write_Str (X (Last_Blank + 1 .. X'Length)); Write_Str (X (XF + Last_Blank .. X'Last));
end; end;
else else
Write_Str (X); Write_Str (X);
...@@ -267,13 +272,23 @@ package body Comperr is ...@@ -267,13 +272,23 @@ package body Comperr is
" http://gcc.gnu.org/bugs.html."); " http://gcc.gnu.org/bugs.html.");
End_Line; End_Line;
elsif Is_Public_Version then elsif Is_GPL_Version then
Write_Str Write_Str
("| submit bug report by email " & ("| Please submit a bug report by email " &
"to report@adacore.com."); "to report@adacore.com.");
End_Line; End_Line;
Write_Str Write_Str
("| GAP members can alternatively use GNAT Tracker:");
End_Line;
Write_Str
("| http://www.adacore.com/ " &
"section 'send a report'.");
End_Line;
Write_Str
("| See gnatinfo.txt for full info on procedure " & ("| See gnatinfo.txt for full info on procedure " &
"for submitting bugs."); "for submitting bugs.");
End_Line; End_Line;
...@@ -290,7 +305,12 @@ package body Comperr is ...@@ -290,7 +305,12 @@ package body Comperr is
Write_Str Write_Str
("| alternatively submit a bug report by email " & ("| alternatively submit a bug report by email " &
"to report@adacore.com."); "to report@adacore.com,");
End_Line;
Write_Str
("| including your customer number #nnn " &
"in the subject line.");
End_Line; End_Line;
end if; end if;
...@@ -299,13 +319,6 @@ package body Comperr is ...@@ -299,13 +319,6 @@ package body Comperr is
" and us to track the bug."); " and us to track the bug.");
End_Line; End_Line;
if not (Is_Public_Version or Is_FSF_Version) then
Write_Str
("| Include your customer number #nnn " &
"in the subject line.");
End_Line;
end if;
Write_Str Write_Str
("| Include the entire contents of this bug " & ("| Include the entire contents of this bug " &
"box in the report."); "box in the report.");
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -628,7 +628,7 @@ package body CStand is ...@@ -628,7 +628,7 @@ package body CStand is
Set_Is_Character_Type (Standard_Wide_Wide_Character); Set_Is_Character_Type (Standard_Wide_Wide_Character);
Set_Is_Known_Valid (Standard_Wide_Wide_Character); Set_Is_Known_Valid (Standard_Wide_Wide_Character);
Set_Size_Known_At_Compile_Time (Standard_Wide_Wide_Character); Set_Size_Known_At_Compile_Time (Standard_Wide_Wide_Character);
Set_Is_Ada_2005 (Standard_Wide_Wide_Character); Set_Is_Ada_2005_Only (Standard_Wide_Wide_Character);
-- Create the bounds for type Wide_Wide_Character -- Create the bounds for type Wide_Wide_Character
...@@ -743,14 +743,14 @@ package body CStand is ...@@ -743,14 +743,14 @@ package body CStand is
Append (Identifier_For (S_Positive), Subtype_Marks (Tdef_Node)); Append (Identifier_For (S_Positive), Subtype_Marks (Tdef_Node));
Set_Type_Definition (Parent (Standard_Wide_Wide_String), Tdef_Node); Set_Type_Definition (Parent (Standard_Wide_Wide_String), Tdef_Node);
Set_Ekind (Standard_Wide_Wide_String, E_String_Type); Set_Ekind (Standard_Wide_Wide_String, E_String_Type);
Set_Etype (Standard_Wide_Wide_String, Set_Etype (Standard_Wide_Wide_String,
Standard_Wide_Wide_String); Standard_Wide_Wide_String);
Set_Component_Type (Standard_Wide_Wide_String, Set_Component_Type (Standard_Wide_Wide_String,
Standard_Wide_Wide_Character); Standard_Wide_Wide_Character);
Set_Component_Size (Standard_Wide_Wide_String, Uint_32); Set_Component_Size (Standard_Wide_Wide_String, Uint_32);
Init_Size_Align (Standard_Wide_Wide_String); Init_Size_Align (Standard_Wide_Wide_String);
Set_Is_Ada_2005 (Standard_Wide_Wide_String); Set_Is_Ada_2005_Only (Standard_Wide_Wide_String);
-- Set index type of Wide_Wide_String -- Set index type of Wide_Wide_String
......
...@@ -218,7 +218,7 @@ void __gnat_unsetenv (char *name) { ...@@ -218,7 +218,7 @@ void __gnat_unsetenv (char *name) {
#elif defined (__hpux__) || defined (sun) \ #elif defined (__hpux__) || defined (sun) \
|| (defined (__mips) && defined (__sgi)) \ || (defined (__mips) && defined (__sgi)) \
|| (defined (__vxworks) && ! defined (__RTP__)) \ || (defined (__vxworks) && ! defined (__RTP__)) \
|| defined (_AIX) || defined (_AIX) || defined (__Lynx__)
/* On Solaris, HP-UX and IRIX there is no function to clear an environment /* On Solaris, HP-UX and IRIX there is no function to clear an environment
variable. So we look for the variable in the environ table and delete it variable. So we look for the variable in the environ table and delete it
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -201,10 +201,8 @@ package Exp_Pakd is ...@@ -201,10 +201,8 @@ package Exp_Pakd is
-- 1-2-...-7-8 9-10-...15-16 17-18-19-20-x-x-x-x x-x-x-x-x-x-x-x -- 1-2-...-7-8 9-10-...15-16 17-18-19-20-x-x-x-x x-x-x-x-x-x-x-x
-- and now, we do indeed have the same representation. The special flag -- and now, we do indeed have the same representation for the memory
-- Is_Left_Justified_Modular is set in the modular type used as the -- version in the constrained and unconstrained cases.
-- packed array type in the big-endian case to ensure that this required
-- left justification occurs.
----------------- -----------------
-- Subprograms -- -- Subprograms --
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -238,37 +238,37 @@ package body Exp_Tss is ...@@ -238,37 +238,37 @@ package body Exp_Tss is
return Make_TSS_Name (Typ, TSS_Init_Proc); return Make_TSS_Name (Typ, TSS_Init_Proc);
end Make_Init_Proc_Name; end Make_Init_Proc_Name;
------------------------- -------------------
-- Make_TSS_Name_Local -- -- Make_TSS_Name --
------------------------- -------------------
function Make_TSS_Name_Local function Make_TSS_Name
(Typ : Entity_Id; (Typ : Entity_Id;
Nam : TSS_Name_Type) return Name_Id Nam : TSS_Name_Type) return Name_Id
is is
begin begin
Get_Name_String (Chars (Typ)); Get_Name_String (Chars (Typ));
Add_Char_To_Name_Buffer ('_');
Add_Nat_To_Name_Buffer (Increment_Serial_Number);
Add_Char_To_Name_Buffer (Nam (1)); Add_Char_To_Name_Buffer (Nam (1));
Add_Char_To_Name_Buffer (Nam (2)); Add_Char_To_Name_Buffer (Nam (2));
return Name_Find; return Name_Find;
end Make_TSS_Name_Local; end Make_TSS_Name;
------------------- -------------------------
-- Make_TSS_Name -- -- Make_TSS_Name_Local --
------------------- -------------------------
function Make_TSS_Name function Make_TSS_Name_Local
(Typ : Entity_Id; (Typ : Entity_Id;
Nam : TSS_Name_Type) return Name_Id Nam : TSS_Name_Type) return Name_Id
is is
begin begin
Get_Name_String (Chars (Typ)); Get_Name_String (Chars (Typ));
Add_Char_To_Name_Buffer ('_');
Add_Nat_To_Name_Buffer (Increment_Serial_Number);
Add_Char_To_Name_Buffer (Nam (1)); Add_Char_To_Name_Buffer (Nam (1));
Add_Char_To_Name_Buffer (Nam (2)); Add_Char_To_Name_Buffer (Nam (2));
return Name_Find; return Name_Find;
end Make_TSS_Name; end Make_TSS_Name_Local;
-------------- --------------
-- Same_TSS -- -- Same_TSS --
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* * * *
* C Header File * * C Header File *
* * * *
* Copyright (C) 1992-2005, Free Software Foundation, Inc. * * Copyright (C) 1992-2006, Free Software Foundation, Inc. *
* * * *
* GNAT is free software; you can redistribute it and/or modify it under * * GNAT is free software; you can redistribute it and/or modify it under *
* terms of the GNU General Public License as published by the Free Soft- * * terms of the GNU General Public License as published by the Free Soft- *
...@@ -167,12 +167,10 @@ extern Boolean Back_Annotate_Rep_Info; ...@@ -167,12 +167,10 @@ extern Boolean Back_Annotate_Rep_Info;
#define No_Exception_Handlers_Set restrict__no_exception_handlers_set #define No_Exception_Handlers_Set restrict__no_exception_handlers_set
#define Check_No_Implicit_Heap_Alloc restrict__check_no_implicit_heap_alloc #define Check_No_Implicit_Heap_Alloc restrict__check_no_implicit_heap_alloc
#define Check_Elaboration_Code_Allowed restrict__check_elaboration_code_allowed #define Check_Elaboration_Code_Allowed restrict__check_elaboration_code_allowed
#define Check_No_Implicit_Heap_Alloc restrict__check_no_implicit_heap_alloc
extern Boolean No_Exception_Handlers_Set (void); extern Boolean No_Exception_Handlers_Set (void);
extern void Check_No_Implicit_Heap_Alloc (Node_Id); extern void Check_No_Implicit_Heap_Alloc (Node_Id);
extern void Check_Elaboration_Code_Allowed (Node_Id); extern void Check_Elaboration_Code_Allowed (Node_Id);
extern void Check_No_Implicit_Heap_Alloc (Node_Id);
/* sem_elim: */ /* sem_elim: */
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2001-2005, Free Software Foundation, Inc. -- -- Copyright (C) 2001-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -200,6 +200,20 @@ package body Fmap is ...@@ -200,6 +200,20 @@ package body Fmap is
Last_In_Table := 0; Last_In_Table := 0;
end Empty_Tables; end Empty_Tables;
---------------
-- Find_Name --
---------------
function Find_Name return Name_Id is
begin
if Name_Buffer (1 .. Name_Len) = "/" then
return Error_Name;
else
return Name_Find;
end if;
end Find_Name;
-------------- --------------
-- Get_Line -- -- Get_Line --
-------------- --------------
...@@ -236,20 +250,6 @@ package body Fmap is ...@@ -236,20 +250,6 @@ package body Fmap is
end if; end if;
end Get_Line; end Get_Line;
---------------
-- Find_Name --
---------------
function Find_Name return Name_Id is
begin
if Name_Buffer (1 .. Name_Len) = "/" then
return Error_Name;
else
return Name_Find;
end if;
end Find_Name;
---------------------- ----------------------
-- Report_Truncated -- -- Report_Truncated --
---------------------- ----------------------
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 2003-2005, AdaCore -- -- Copyright (C) 2003-2006, AdaCore --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -71,7 +71,7 @@ package GNAT.Bounded_Mailboxes is ...@@ -71,7 +71,7 @@ package GNAT.Bounded_Mailboxes is
-- Protected type Mailbox has the following inherited interface: -- Protected type Mailbox has the following inherited interface:
-- entry Insert (Item : in Message_Reference); -- entry Insert (Item : Message_Reference);
-- Insert Item into the Mailbox. Blocks caller -- Insert Item into the Mailbox. Blocks caller
-- until space is available. -- until space is available.
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2001-2005, AdaCore -- -- Copyright (C) 2001-2006, AdaCore --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -188,6 +188,7 @@ package body GNAT.CGI is ...@@ -188,6 +188,7 @@ package body GNAT.CGI is
Data : constant String := Metavariable (Query_String); Data : constant String := Metavariable (Query_String);
begin begin
Current_Method := Get; Current_Method := Get;
if Data /= "" then if Data /= "" then
Set_Parameter_Table (Data); Set_Parameter_Table (Data);
end if; end if;
...@@ -335,9 +336,8 @@ package body GNAT.CGI is ...@@ -335,9 +336,8 @@ package body GNAT.CGI is
--------------------- ---------------------
function Get_Environment (Variable_Name : String) return String is function Get_Environment (Variable_Name : String) return String is
Value : OS_Lib.String_Access := OS_Lib.Getenv (Variable_Name); Value : OS_Lib.String_Access := OS_Lib.Getenv (Variable_Name);
Result : constant String := Value.all; Result : constant String := Value.all;
begin begin
OS_Lib.Free (Value); OS_Lib.Free (Value);
return Result; return Result;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 2000-2005, AdaCore -- -- Copyright (C) 2000-2006, AdaCore --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
-- procedure New_Client is -- procedure New_Client is
-- use GNAT; -- use GNAT;
-- procedure Add_Client_To_Database (Name : in String) is -- procedure Add_Client_To_Database (Name : String) is
-- begin -- begin
-- ... -- ...
-- end Add_Client_To_Database; -- end Add_Client_To_Database;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2003-2005, Free Software Foundation, Inc. -- -- Copyright (C) 2003-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -54,17 +54,17 @@ procedure Core_Dump (Occurrence : Exception_Occurrence) is ...@@ -54,17 +54,17 @@ procedure Core_Dump (Occurrence : Exception_Occurrence) is
procedure Setexv ( procedure Setexv (
Status : out Cond_Value_Type; Status : out Cond_Value_Type;
Vector : in Unsigned_Longword := 0; Vector : Unsigned_Longword := 0;
Addres : in Address := Address_Zero; Addres : Address := Address_Zero;
Acmode : in Access_Mode_Type := Access_Mode_Zero; Acmode : Access_Mode_Type := Access_Mode_Zero;
Prvhnd : in Unsigned_Longword := 0); Prvhnd : Unsigned_Longword := 0);
pragma Interface (External, Setexv); pragma Interface (External, Setexv);
pragma Import_Valued_Procedure (Setexv, "SYS$SETEXV", pragma Import_Valued_Procedure (Setexv, "SYS$SETEXV",
(Cond_Value_Type, Unsigned_Longword, Address, Access_Mode_Type, (Cond_Value_Type, Unsigned_Longword, Address, Access_Mode_Type,
Unsigned_Longword), Unsigned_Longword),
(Value, Value, Value, Value, Value)); (Value, Value, Value, Value, Value));
procedure Lib_Signal (I : in Integer); procedure Lib_Signal (I : Integer);
pragma Interface (C, Lib_Signal); pragma Interface (C, Lib_Signal);
pragma Import_Procedure (Lib_Signal, "LIB$SIGNAL", Mechanism => (Value)); pragma Import_Procedure (Lib_Signal, "LIB$SIGNAL", Mechanism => (Value));
begin begin
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2002-2005, AdaCore -- -- Copyright (C) 2002-2006, AdaCore --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -1058,8 +1058,8 @@ package body GNAT.Expect is ...@@ -1058,8 +1058,8 @@ package body GNAT.Expect is
Pipe1 : in out Pipe_Type; Pipe1 : in out Pipe_Type;
Pipe2 : in out Pipe_Type; Pipe2 : in out Pipe_Type;
Pipe3 : in out Pipe_Type; Pipe3 : in out Pipe_Type;
Cmd : in String; Cmd : String;
Args : in System.Address) Args : System.Address)
is is
pragma Warnings (Off, Pid); pragma Warnings (Off, Pid);
......
...@@ -1970,6 +1970,7 @@ package body GNAT.Perfect_Hash_Generators is ...@@ -1970,6 +1970,7 @@ package body GNAT.Perfect_Hash_Generators is
-- position selection plus Pos. Once this routine is called, reduced -- position selection plus Pos. Once this routine is called, reduced
-- words are sorted by subsets and each item (First, Last) in Sets -- words are sorted by subsets and each item (First, Last) in Sets
-- defines the range of identical keys. -- defines the range of identical keys.
-- Need comment saying exactly what Last is ???
function Count_Different_Keys function Count_Different_Keys
(Table : Vertex_Table_Type; (Table : Vertex_Table_Type;
...@@ -1991,9 +1992,9 @@ package body GNAT.Perfect_Hash_Generators is ...@@ -1991,9 +1992,9 @@ package body GNAT.Perfect_Hash_Generators is
Last : in out Natural; Last : in out Natural;
Pos : Natural) Pos : Natural)
is is
S : constant Vertex_Table_Type := Table (1 .. Last); S : constant Vertex_Table_Type := Table (Table'First .. Last);
C : constant Natural := Pos; C : constant Natural := Pos;
-- Shortcuts -- Shortcuts (why are these not renames ???)
F : Integer; F : Integer;
L : Integer; L : Integer;
......
...@@ -684,9 +684,12 @@ package body GNAT.Regpat is ...@@ -684,9 +684,12 @@ package body GNAT.Regpat is
Operand : Pointer; Operand : Pointer;
Greedy : Boolean := True) Greedy : Boolean := True)
is is
Dest : constant Pointer := Emit_Ptr; Dest : constant Pointer := Emit_Ptr;
Old : Pointer; Old : Pointer;
Size : Pointer := 3; Size : Pointer := 3;
Discard : Pointer;
pragma Warnings (Off, Discard);
begin begin
-- If not greedy, we have to emit another opcode first -- If not greedy, we have to emit another opcode first
...@@ -713,7 +716,7 @@ package body GNAT.Regpat is ...@@ -713,7 +716,7 @@ package body GNAT.Regpat is
Link_Tail (Old, Old + 3); Link_Tail (Old, Old + 3);
end if; end if;
Old := Emit_Node (Op); Discard := Emit_Node (Op);
Emit_Ptr := Dest + Size; Emit_Ptr := Dest + Size;
end Insert_Operator; end Insert_Operator;
...@@ -2364,21 +2367,23 @@ package body GNAT.Regpat is ...@@ -2364,21 +2367,23 @@ package body GNAT.Regpat is
----------- -----------
procedure Match procedure Match
(Self : Pattern_Matcher; (Self : Pattern_Matcher;
Data : String; Data : String;
Matches : out Match_Array; Matches : out Match_Array;
Data_First : Integer := -1; Data_First : Integer := -1;
Data_Last : Positive := Positive'Last) Data_Last : Positive := Positive'Last)
is is
Program : Program_Data renames Self.Program; -- Shorter notation pragma Assert (Matches'First = 0);
Program : Program_Data renames Self.Program; -- Shorter notation
First_In_Data : constant Integer := Integer'Max (Data_First, Data'First); First_In_Data : constant Integer := Integer'Max (Data_First, Data'First);
Last_In_Data : constant Integer := Integer'Min (Data_Last, Data'Last); Last_In_Data : constant Integer := Integer'Min (Data_Last, Data'Last);
-- Global work variables -- Global work variables
Input_Pos : Natural; -- String-input pointer Input_Pos : Natural; -- String-input pointer
BOL_Pos : Natural; -- Beginning of input, for ^ check BOL_Pos : Natural; -- Beginning of input, for ^ check
Matched : Boolean := False; -- Until proven True Matched : Boolean := False; -- Until proven True
Matches_Full : Match_Array (0 .. Natural'Max (Self.Paren_Count, Matches_Full : Match_Array (0 .. Natural'Max (Self.Paren_Count,
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1986 by University of Toronto. -- -- Copyright (C) 1986 by University of Toronto. --
-- Copyright (C) 1996-2005, AdaCore -- -- Copyright (C) 1996-2006, AdaCore --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -583,7 +583,8 @@ package GNAT.Regpat is ...@@ -583,7 +583,8 @@ package GNAT.Regpat is
Data_First : Integer := -1; Data_First : Integer := -1;
Data_Last : Positive := Positive'Last); Data_Last : Positive := Positive'Last);
-- Match Data using the given pattern matcher and store result in Matches. -- Match Data using the given pattern matcher and store result in Matches.
-- The expression matches if Matches (0) /= No_Match. -- The expression matches if Matches (0) /= No_Match. The lower bound of
-- Matches is required to be zero.
-- --
-- At most Matches'Length parenthesis are returned -- At most Matches'Length parenthesis are returned
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1998-2005 AdaCore -- -- Copyright (C) 1998-2006 AdaCore --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -128,6 +128,7 @@ package body GNAT.Threads is ...@@ -128,6 +128,7 @@ package body GNAT.Threads is
T : Tasking.Task_Id; T : Tasking.Task_Id;
use type Tasking.Task_Id; use type Tasking.Task_Id;
use type System.OS_Interface.Thread_Id;
begin begin
STPO.Lock_RTS; STPO.Lock_RTS;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2005, Free Software Foundation, Inc. -- -- Copyright (C) 2005-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -69,7 +69,7 @@ package body GNAT.Traceback.Symbolic is ...@@ -69,7 +69,7 @@ package body GNAT.Traceback.Symbolic is
procedure Symbolize procedure Symbolize
(Status : out Cond_Value_Type; (Status : out Cond_Value_Type;
Current_PC : in Address; Current_PC : Address;
Filename_Name : out Address; Filename_Name : out Address;
Library_Name : out Address; Library_Name : out Address;
Record_Number : out Integer; Record_Number : out Integer;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2003 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -42,6 +42,15 @@ package body Get_Targ is ...@@ -42,6 +42,15 @@ package body Get_Targ is
end if; end if;
end Digits_From_Size; end Digits_From_Size;
-----------------------------
-- Get_Max_Unaligned_Field --
-----------------------------
function Get_Max_Unaligned_Field return Pos is
begin
return 64; -- Can be different on some targets (e.g., AAMP)
end Get_Max_Unaligned_Field;
--------------------- ---------------------
-- Width_From_Size -- -- Width_From_Size --
--------------------- ---------------------
...@@ -57,13 +66,4 @@ package body Get_Targ is ...@@ -57,13 +66,4 @@ package body Get_Targ is
end if; end if;
end Width_From_Size; end Width_From_Size;
-----------------------------
-- Get_Max_Unaligned_Field --
-----------------------------
function Get_Max_Unaligned_Field return Pos is
begin
return 64; -- Can be different on some targets (e.g., AAMP)
end Get_Max_Unaligned_Field;
end Get_Targ; end Get_Targ;
...@@ -85,7 +85,7 @@ procedure Gnatbind is ...@@ -85,7 +85,7 @@ procedure Gnatbind is
procedure Scan_Bind_Arg (Argv : String); procedure Scan_Bind_Arg (Argv : String);
-- Scan and process binder specific arguments. Argv is a single argument. -- Scan and process binder specific arguments. Argv is a single argument.
-- All the one character arguments are still handled by Switch. This -- All the one character arguments are still handled by Switch. This
-- routine handles -aO -aI and -I-. -- routine handles -aO -aI and -I-. The lower bound of Argv must be 1.
function Is_Cross_Compiler return Boolean; function Is_Cross_Compiler return Boolean;
-- Returns True iff this is a cross-compiler -- Returns True iff this is a cross-compiler
...@@ -206,6 +206,8 @@ procedure Gnatbind is ...@@ -206,6 +206,8 @@ procedure Gnatbind is
------------------- -------------------
procedure Scan_Bind_Arg (Argv : String) is procedure Scan_Bind_Arg (Argv : String) is
pragma Assert (Argv'First = 1);
begin begin
-- Now scan arguments that are specific to the binder and are not -- Now scan arguments that are specific to the binder and are not
-- handled by the common circuitry in Switch. -- handled by the common circuitry in Switch.
...@@ -420,11 +422,11 @@ begin ...@@ -420,11 +422,11 @@ begin
Scan_Args : while Next_Arg < Arg_Count loop Scan_Args : while Next_Arg < Arg_Count loop
declare declare
Next_Argv : String (1 .. Len_Arg (Next_Arg)); Next_Argv : String (1 .. Len_Arg (Next_Arg));
begin begin
Fill_Arg (Next_Argv'Address, Next_Arg); Fill_Arg (Next_Argv'Address, Next_Arg);
Scan_Bind_Arg (Next_Argv); Scan_Bind_Arg (Next_Argv);
end; end;
Next_Arg := Next_Arg + 1; Next_Arg := Next_Arg + 1;
end loop Scan_Args; end loop Scan_Args;
...@@ -449,7 +451,7 @@ begin ...@@ -449,7 +451,7 @@ begin
-- Output usage if requested -- Output usage if requested
if Usage_Requested then if Usage_Requested then
Bindusg; Bindusg.Display;
end if; end if;
-- Check that the Ada binder file specified has extension .adb and that -- Check that the Ada binder file specified has extension .adb and that
...@@ -535,7 +537,7 @@ begin ...@@ -535,7 +537,7 @@ begin
-- Output usage information if no files -- Output usage information if no files
if not More_Lib_Files then if not More_Lib_Files then
Bindusg; Bindusg.Display;
Exit_Program (E_Fatal); Exit_Program (E_Fatal);
end if; end if;
...@@ -600,8 +602,8 @@ begin ...@@ -600,8 +602,8 @@ begin
-- Set standard configuration parameters -- Set standard configuration parameters
Suppress_Standard_Library_On_Target := True; Suppress_Standard_Library_On_Target := True;
Configurable_Run_Time_Mode := True; Configurable_Run_Time_Mode := True;
end if; end if;
-- For main ALI files, even if they are interfaces, we get their -- For main ALI files, even if they are interfaces, we get their
......
...@@ -253,6 +253,12 @@ procedure Gnatdll is ...@@ -253,6 +253,12 @@ procedure Gnatdll is
end loop; end loop;
Close (File); Close (File);
exception
when Name_Error =>
Raise_Exception
(Syntax_Error'Identity,
"list-of-files file " & List_Filename & " not found.");
end Add_Files_From_List; end Add_Files_From_List;
-- Start of processing for Parse_Command_Line -- Start of processing for Parse_Command_Line
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -579,7 +579,6 @@ package body Inline is ...@@ -579,7 +579,6 @@ package body Inline is
end loop; end loop;
Comp_Unit := Parent (Pack); Comp_Unit := Parent (Pack);
while Present (Comp_Unit) while Present (Comp_Unit)
and then Nkind (Comp_Unit) /= N_Compilation_Unit and then Nkind (Comp_Unit) /= N_Compilation_Unit
loop loop
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -93,14 +93,14 @@ package body Itypes is ...@@ -93,14 +93,14 @@ package body Itypes is
Set_Etype (I_Typ, T); Set_Etype (I_Typ, T);
Init_Size_Align (I_Typ); Init_Size_Align (I_Typ);
Set_Depends_On_Private (I_Typ, Depends_On_Private (T)); Set_Depends_On_Private (I_Typ, Depends_On_Private (T));
Set_Is_Public (I_Typ, Is_Public (T)); Set_Is_Public (I_Typ, Is_Public (T));
Set_From_With_Type (I_Typ, From_With_Type (T)); Set_From_With_Type (I_Typ, From_With_Type (T));
Set_Is_Access_Constant (I_Typ, Is_Access_Constant (T)); Set_Is_Access_Constant (I_Typ, Is_Access_Constant (T));
Set_Is_Generic_Type (I_Typ, Is_Generic_Type (T)); Set_Is_Generic_Type (I_Typ, Is_Generic_Type (T));
Set_Is_Volatile (I_Typ, Is_Volatile (T)); Set_Is_Volatile (I_Typ, Is_Volatile (T));
Set_Treat_As_Volatile (I_Typ, Treat_As_Volatile (T)); Set_Treat_As_Volatile (I_Typ, Treat_As_Volatile (T));
Set_Is_Atomic (I_Typ, Is_Atomic (T)); Set_Is_Atomic (I_Typ, Is_Atomic (T));
Set_Is_Ada_2005 (I_Typ, Is_Ada_2005 (T)); Set_Is_Ada_2005_Only (I_Typ, Is_Ada_2005_Only (T));
Set_Can_Never_Be_Null (I_Typ); Set_Can_Never_Be_Null (I_Typ);
return I_Typ; return I_Typ;
......
...@@ -61,6 +61,10 @@ Wmissing-format-attribute ...@@ -61,6 +61,10 @@ Wmissing-format-attribute
Ada Ada
; Documented for C ; Documented for C
Woverlength-strings
Ada
; Documented for C
nostdinc nostdinc
Ada RejectNegative Ada RejectNegative
; Don't look for source files ; Don't look for source files
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2004-2005 Free Software Foundation, Inc. -- -- Copyright (C) 2004-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -135,6 +135,9 @@ package body Makeutl is ...@@ -135,6 +135,9 @@ package body Makeutl is
Finish : Natural := Argv'Last; Finish : Natural := Argv'Last;
Equal_Pos : Natural; Equal_Pos : Natural;
pragma Assert (Argv'First = 1);
pragma Assert (Argv (1 .. 2) = "-X");
begin begin
if Argv'Last < 5 then if Argv'Last < 5 then
return False; return False;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2004 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -250,7 +250,7 @@ package body MDLL.Utl is ...@@ -250,7 +250,7 @@ package body MDLL.Utl is
if not Success then if not Success then
declare declare
Base_Name : constant String := Base_Name : constant String :=
Directory_Operations.Base_Name (Alis (1).all, ".ali"); Directory_Operations.Base_Name (Alis (Alis'First).all, ".ali");
begin begin
OS_Lib.Delete_File ("b~" & Base_Name & ".ads", Success); OS_Lib.Delete_File ("b~" & Base_Name & ".ads", Success);
OS_Lib.Delete_File ("b~" & Base_Name & ".adb", Success); OS_Lib.Delete_File ("b~" & Base_Name & ".adb", Success);
......
...@@ -394,6 +394,8 @@ package body MDLL is ...@@ -394,6 +394,8 @@ package body MDLL is
raise; raise;
end Ada_Build_Non_Reloc_DLL; end Ada_Build_Non_Reloc_DLL;
-- Start of processing for Build_Dynamic_Library
begin begin
-- On Windows the binder file must not be in the first position in the -- On Windows the binder file must not be in the first position in the
-- list. This is due to the way DLL's are built on Windows. We swap the -- list. This is due to the way DLL's are built on Windows. We swap the
...@@ -402,13 +404,14 @@ package body MDLL is ...@@ -402,13 +404,14 @@ package body MDLL is
if L_Afiles'Length > 1 then if L_Afiles'Length > 1 then
declare declare
Filename : constant String := Filename : constant String :=
Directory_Operations.Base_Name (L_Afiles (1).all); Directory_Operations.Base_Name
(L_Afiles (L_Afiles'First).all);
First : constant Positive := Filename'First; First : constant Positive := Filename'First;
begin begin
if Filename (First .. First + 1) = "b~" then if Filename (First .. First + 1) = "b~" then
L_Afiles (L_Afiles'Last) := Afiles (1); L_Afiles (L_Afiles'Last) := Afiles (Afiles'First);
L_Afiles (1) := Afiles (Afiles'Last); L_Afiles (L_Afiles'First) := Afiles (Afiles'Last);
end if; end if;
end; end;
end if; end if;
...@@ -438,7 +441,6 @@ package body MDLL is ...@@ -438,7 +441,6 @@ package body MDLL is
(Lib_Filename : String; (Lib_Filename : String;
Def_Filename : String) Def_Filename : String)
is is
procedure Build_Import_Library (Lib_Filename : String); procedure Build_Import_Library (Lib_Filename : String);
-- Build an import library. This is to build only a .a library to link -- Build an import library. This is to build only a .a library to link
-- against a DLL. -- against a DLL.
...@@ -472,8 +474,12 @@ package body MDLL is ...@@ -472,8 +474,12 @@ package body MDLL is
-- convention and we try as much as possible to follow the platform -- convention and we try as much as possible to follow the platform
-- convention. -- convention.
if Lib_Filename'Length > 3 and then Lib_Filename (1 .. 3) = "lib" then if Lib_Filename'Length > 3
Build_Import_Library (Lib_Filename (4 .. Lib_Filename'Last)); and then
Lib_Filename (Lib_Filename'First .. Lib_Filename'First + 2) = "lib"
then
Build_Import_Library
(Lib_Filename (Lib_Filename'First + 3 .. Lib_Filename'Last));
else else
Build_Import_Library (Lib_Filename); Build_Import_Library (Lib_Filename);
end if; end if;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- T e m p l a t e -- -- T e m p l a t e --
-- -- -- --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2001-2005 Free Software Foundation, Inc. -- -- Copyright (C) 2001-2006 Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -30,12 +30,6 @@ with Targparm; use Targparm; ...@@ -30,12 +30,6 @@ with Targparm; use Targparm;
package body Osint.B is package body Osint.B is
Binder_Output_Time_Stamps_Set : Boolean := False;
Old_Binder_Output_Time_Stamp : Time_Stamp_Type;
New_Binder_Output_Time_Stamp : Time_Stamp_Type;
Recording_Time_From_Last_Bind : Boolean := False;
------------------------- -------------------------
-- Close_Binder_Output -- -- Close_Binder_Output --
------------------------- -------------------------
...@@ -51,10 +45,6 @@ package body Osint.B is ...@@ -51,10 +45,6 @@ package body Osint.B is
Get_Name_String (Output_File_Name)); Get_Name_String (Output_File_Name));
end if; end if;
if Recording_Time_From_Last_Bind then
New_Binder_Output_Time_Stamp := File_Stamp (Output_File_Name);
Binder_Output_Time_Stamps_Set := True;
end if;
end Close_Binder_Output; end Close_Binder_Output;
-------------------------- --------------------------
...@@ -164,10 +154,6 @@ package body Osint.B is ...@@ -164,10 +154,6 @@ package body Osint.B is
Bfile := Name_Find; Bfile := Name_Find;
if Recording_Time_From_Last_Bind then
Old_Binder_Output_Time_Stamp := File_Stamp (Bfile);
end if;
Create_File_And_Check (Output_FD, Text); Create_File_And_Check (Output_FD, Text);
end Create_Binder_Output; end Create_Binder_Output;
...@@ -183,80 +169,6 @@ package body Osint.B is ...@@ -183,80 +169,6 @@ package body Osint.B is
function Next_Main_Lib_File return File_Name_Type renames Next_Main_File; function Next_Main_Lib_File return File_Name_Type renames Next_Main_File;
--------------------------------
-- Record_Time_From_Last_Bind --
--------------------------------
procedure Record_Time_From_Last_Bind is
begin
Recording_Time_From_Last_Bind := True;
end Record_Time_From_Last_Bind;
-------------------------
-- Time_From_Last_Bind --
-------------------------
function Time_From_Last_Bind return Nat is
Old_Y : Nat;
Old_M : Nat;
Old_D : Nat;
Old_H : Nat;
Old_Mi : Nat;
Old_S : Nat;
New_Y : Nat;
New_M : Nat;
New_D : Nat;
New_H : Nat;
New_Mi : Nat;
New_S : Nat;
type Month_Data is array (Int range 1 .. 12) of Int;
Cumul : constant Month_Data := (0, 0, 3, 3, 4, 4, 5, 5, 5, 6, 6, 7);
-- Represents the difference in days from a period compared to the
-- same period if all months had 31 days, i.e:
--
-- Cumul (m) = 31x(m-1) - (number of days from 01/01 to m/01)
Res : Int;
begin
if not Recording_Time_From_Last_Bind
or else not Binder_Output_Time_Stamps_Set
or else Old_Binder_Output_Time_Stamp = Empty_Time_Stamp
then
return Nat'Last;
end if;
Split_Time_Stamp
(Old_Binder_Output_Time_Stamp,
Old_Y, Old_M, Old_D, Old_H, Old_Mi, Old_S);
Split_Time_Stamp
(New_Binder_Output_Time_Stamp,
New_Y, New_M, New_D, New_H, New_Mi, New_S);
Res := New_Mi - Old_Mi;
-- 60 minutes in an hour
Res := Res + 60 * (New_H - Old_H);
-- 24 hours in a day
Res := Res + 60 * 24 * (New_D - Old_D);
-- Almost 31 days in a month
Res := Res + 60 * 24 *
(31 * (New_M - Old_M) - Cumul (New_M) + Cumul (Old_M));
-- 365 days in a year
Res := Res + 60 * 24 * 365 * (New_Y - Old_Y);
return Res;
end Time_From_Last_Bind;
----------------------- -----------------------
-- Write_Binder_Info -- -- Write_Binder_Info --
----------------------- -----------------------
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 2001 Free Software Foundation, Inc. -- -- Copyright (C) 2001-2006 Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -29,10 +29,6 @@ ...@@ -29,10 +29,6 @@
package Osint.B is package Osint.B is
procedure Record_Time_From_Last_Bind;
-- Trigger the computing of the time from the last bind of the same
-- program.
function More_Lib_Files return Boolean; function More_Lib_Files return Boolean;
-- Indicates whether more library information files remain to be processed. -- Indicates whether more library information files remain to be processed.
-- Returns False right away if no source files, or if all source files -- Returns False right away if no source files, or if all source files
...@@ -45,20 +41,6 @@ package Osint.B is ...@@ -45,20 +41,6 @@ package Osint.B is
-- called only if a previous call to More_Lib_Files returned True). This -- called only if a previous call to More_Lib_Files returned True). This
-- name is the simple name, excluding any directory information. -- name is the simple name, excluding any directory information.
function Time_From_Last_Bind return Nat;
-- This function give an approximate number of minute from the last bind.
-- It bases its computation on file stamp and therefore does gibe not
-- any meaningful result before the new output binder file is written.
-- So it returns Nat'last if:
--
-- - it is the first bind of this specific program
-- - Record_Time_From_Last_Bind was not Called first
-- - Close_Binder_Output was not called first
--
-- otherwise it returns the number of minutes from the last bind. The
-- computation does not try to be completely accurate and in particular
-- does not take leap years into account.
------------------- -------------------
-- Binder Output -- -- Binder Output --
------------------- -------------------
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -58,6 +58,15 @@ package body Output is ...@@ -58,6 +58,15 @@ package body Output is
Special_Output_Proc := null; Special_Output_Proc := null;
end Cancel_Special_Output; end Cancel_Special_Output;
------------
-- Column --
------------
function Column return Pos is
begin
return Pos (Next_Col);
end Column;
------------------ ------------------
-- Flush_Buffer -- -- Flush_Buffer --
------------------ ------------------
...@@ -100,15 +109,6 @@ package body Output is ...@@ -100,15 +109,6 @@ package body Output is
end if; end if;
end Flush_Buffer; end Flush_Buffer;
------------
-- Column --
------------
function Column return Pos is
begin
return Pos (Next_Col);
end Column;
--------------------------- ---------------------------
-- Restore_Output_Buffer -- -- Restore_Output_Buffer --
--------------------------- ---------------------------
...@@ -240,8 +240,12 @@ package body Output is ...@@ -240,8 +240,12 @@ package body Output is
Write_Eol; Write_Eol;
end if; end if;
Buffer (Next_Col) := C; if C = ASCII.LF then
Next_Col := Next_Col + 1; Write_Eol;
else
Buffer (Next_Col) := C;
Next_Col := Next_Col + 1;
end if;
end Write_Char; end Write_Char;
--------------- ---------------
...@@ -295,6 +299,17 @@ package body Output is ...@@ -295,6 +299,17 @@ package body Output is
Write_Eol; Write_Eol;
end Write_Line; end Write_Line;
------------------
-- Write_Spaces --
------------------
procedure Write_Spaces (N : Nat) is
begin
for J in 1 .. N loop
Write_Char (' ');
end loop;
end Write_Spaces;
--------------- ---------------
-- Write_Str -- -- Write_Str --
--------------- ---------------
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -101,11 +101,15 @@ package Output is ...@@ -101,11 +101,15 @@ package Output is
-- Write an integer value with no leading blanks or zeroes. Negative -- Write an integer value with no leading blanks or zeroes. Negative
-- values are preceded by a minus sign). -- values are preceded by a minus sign).
procedure Write_Spaces (N : Nat);
-- Write N spaces
procedure Write_Str (S : String); procedure Write_Str (S : String);
-- Write a string of characters to the standard output file. Note that -- Write a string of characters to the standard output file. Note that
-- end of line is handled separately using WRITE_EOL, so the string -- end of line is normally handled separately using WRITE_EOL, but it
-- should not contain either of the characters LF or CR, but it may -- is allowed for the string to contain LF (but not CR) characters,
-- contain horizontal tab characters. -- which are properly interpreted as end of line characters. The string
-- may also contain horizontal tab characters.
procedure Write_Line (S : String); procedure Write_Line (S : String);
-- Equivalent to Write_Str (S) followed by Write_Eol; -- Equivalent to Write_Str (S) followed by Write_Eol;
...@@ -144,7 +148,7 @@ package Output is ...@@ -144,7 +148,7 @@ package Output is
-- names, precisely to make sure that they are only used for debugging! -- names, precisely to make sure that they are only used for debugging!
procedure w (C : Character); procedure w (C : Character);
-- Dump quote, character quote, followed by line return -- Dump quote, character, quote, followed by line return
procedure w (S : String); procedure w (S : String);
-- Dump string followed by line return -- Dump string followed by line return
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 2001-2005, Free Software Foundation, Inc. -- -- Copyright (C) 2001-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -110,7 +110,7 @@ package Prj.Attr is ...@@ -110,7 +110,7 @@ package Prj.Attr is
-- The type to refers to an attribute, self-initialized -- The type to refers to an attribute, self-initialized
Empty_Attribute : constant Attribute_Node_Id; Empty_Attribute : constant Attribute_Node_Id;
-- Indicates no attribute. Default value of Attribute_Node_Id objects. -- Indicates no attribute. Default value of Attribute_Node_Id objects
Attribute_First : constant Attribute_Node_Id; Attribute_First : constant Attribute_Node_Id;
-- First attribute node id of project level attributes -- First attribute node id of project level attributes
...@@ -205,7 +205,7 @@ private ...@@ -205,7 +205,7 @@ private
---------------- ----------------
Attributes_Initial : constant := 50; Attributes_Initial : constant := 50;
Attributes_Increment : constant := 50; Attributes_Increment : constant := 100;
Attribute_Node_Low_Bound : constant := 0; Attribute_Node_Low_Bound : constant := 0;
Attribute_Node_High_Bound : constant := 099_999_999; Attribute_Node_High_Bound : constant := 099_999_999;
...@@ -235,7 +235,7 @@ private ...@@ -235,7 +235,7 @@ private
-------------- --------------
Packages_Initial : constant := 10; Packages_Initial : constant := 10;
Packages_Increment : constant := 50; Packages_Increment : constant := 100;
Package_Node_Low_Bound : constant := 0; Package_Node_Low_Bound : constant := 0;
Package_Node_High_Bound : constant := 099_999_999; Package_Node_High_Bound : constant := 099_999_999;
......
...@@ -517,7 +517,7 @@ package body System.AST_Handling is ...@@ -517,7 +517,7 @@ package body System.AST_Handling is
---------------------------- ----------------------------
procedure Expand_AST_Packet_Pool procedure Expand_AST_Packet_Pool
(Requested_Packets : in Natural; (Requested_Packets : Natural;
Actual_Number : out Natural; Actual_Number : out Natural;
Total_Number : out Natural) Total_Number : out Natural)
is is
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- This specification is derived from the Ada Reference Manual for use with -- -- This specification is derived from the Ada Reference Manual for use with --
-- GNAT. The copyright notice above, and the license provisions that follow -- -- GNAT. The copyright notice above, and the license provisions that follow --
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1995-2005 AdaCore -- -- Copyright (C) 1995-2006, AdaCore --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -48,9 +48,9 @@ package body System.HTable is ...@@ -48,9 +48,9 @@ package body System.HTable is
Iterator_Started : Boolean := False; Iterator_Started : Boolean := False;
function Get_Non_Null return Elmt_Ptr; function Get_Non_Null return Elmt_Ptr;
-- Returns Null_Ptr if Iterator_Started is false of the Table is -- Returns Null_Ptr if Iterator_Started is false or the Table is empty.
-- empty. Returns Iterator_Ptr if non null, or the next non null -- Returns Iterator_Ptr if non null, or the next non null element in
-- element in table if any. -- table if any.
--------- ---------
-- Get -- -- Get --
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -41,8 +41,7 @@ package body System.Img_Dec is ...@@ -41,8 +41,7 @@ package body System.Img_Dec is
function Image_Decimal function Image_Decimal
(V : Integer; (V : Integer;
Scale : Integer) Scale : Integer) return String
return String
is is
P : Natural := 0; P : Natural := 0;
S : String (1 .. 64); S : String (1 .. 64);
...@@ -76,10 +75,10 @@ package body System.Img_Dec is ...@@ -76,10 +75,10 @@ package body System.Img_Dec is
Aft : Natural; Aft : Natural;
Exp : Natural) Exp : Natural)
is is
Minus : constant Boolean := (Digs (1) = '-'); Minus : constant Boolean := (Digs (Digs'First) = '-');
-- Set True if input is negative -- Set True if input is negative
Zero : Boolean := (Digs (2) = '0'); Zero : Boolean := (Digs (Digs'First + 1) = '0');
-- Set True if input is exactly zero (only case when a leading zero -- Set True if input is exactly zero (only case when a leading zero
-- is permitted in the input string given to this procedure). This -- is permitted in the input string given to this procedure). This
-- flag can get set later if rounding causes the value to become zero. -- flag can get set later if rounding causes the value to become zero.
...@@ -147,10 +146,10 @@ package body System.Img_Dec is ...@@ -147,10 +146,10 @@ package body System.Img_Dec is
-- The result is zero, unless we are rounding just before -- The result is zero, unless we are rounding just before
-- the first digit, and the first digit is five or more. -- the first digit, and the first digit is five or more.
if N = 1 and then Digs (2) >= '5' then if N = 1 and then Digs (Digs'First + 1) >= '5' then
Digs (1) := '1'; Digs (Digs'First) := '1';
else else
Digs (1) := '0'; Digs (Digs'First) := '0';
Zero := True; Zero := True;
end if; end if;
...@@ -181,7 +180,7 @@ package body System.Img_Dec is ...@@ -181,7 +180,7 @@ package body System.Img_Dec is
-- OK, because we already captured the value of the sign and -- OK, because we already captured the value of the sign and
-- we are in any case destroying the value in the Digs buffer -- we are in any case destroying the value in the Digs buffer
Digs (1) := '1'; Digs (Digs'First) := '1';
FD := 1; FD := 1;
ND := ND + 1; ND := ND + 1;
Digits_Before_Point := Digits_Before_Point + 1; Digits_Before_Point := Digits_Before_Point + 1;
......
...@@ -295,7 +295,7 @@ begin ...@@ -295,7 +295,7 @@ begin
end loop; end loop;
-- Setup the masks to be exported. -- Setup the masks to be exported
Result := sigemptyset (mask'Access); Result := sigemptyset (mask'Access);
pragma Assert (Result = 0); pragma Assert (Result = 0);
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -89,8 +89,7 @@ package System.Machine_Code is ...@@ -89,8 +89,7 @@ package System.Machine_Code is
Outputs : Asm_Output_Operand_List; Outputs : Asm_Output_Operand_List;
Inputs : Asm_Input_Operand_List; Inputs : Asm_Input_Operand_List;
Clobber : String := ""; Clobber : String := "";
Volatile : Boolean := False) Volatile : Boolean := False) return Asm_Insn;
return Asm_Insn;
function Asm ( function Asm (
Template : String; Template : String;
...@@ -121,7 +120,7 @@ private ...@@ -121,7 +120,7 @@ private
type Asm_Output_Operand is new Integer; type Asm_Output_Operand is new Integer;
type Asm_Insn is new Integer; type Asm_Insn is new Integer;
-- All three of these types are dummy types, to meet the requirements of -- All three of these types are dummy types, to meet the requirements of
-- type consistenty. No values of these types are ever referenced. -- type consistency. No values of these types are ever referenced.
No_Input_Operands : constant Asm_Input_Operand := 0; No_Input_Operands : constant Asm_Input_Operand := 0;
No_Output_Operands : constant Asm_Output_Operand := 0; No_Output_Operands : constant Asm_Output_Operand := 0;
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
-- B o d y -- -- B o d y --
-- (Version for Alpha/VMS) -- -- (Version for Alpha/VMS) --
-- -- -- --
-- Copyright (C) 2001-2005, AdaCore -- -- Copyright (C) 2001-2006, AdaCore --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -175,7 +175,7 @@ package body System.Machine_State_Operations is ...@@ -175,7 +175,7 @@ package body System.Machine_State_Operations is
function Get_Code_Loc (M : Machine_State) return Code_Loc is function Get_Code_Loc (M : Machine_State) return Code_Loc is
procedure Get_Invo_Context ( procedure Get_Invo_Context (
Result : out Unsigned_Longword; -- return value Result : out Unsigned_Longword; -- return value
Invo_Handle : in Invo_Handle_Type; Invo_Handle : Invo_Handle_Type;
Invo_Context : out Invo_Context_Blk_Type); Invo_Context : out Invo_Context_Blk_Type);
pragma Interface (External, Get_Invo_Context); pragma Interface (External, Get_Invo_Context);
...@@ -221,7 +221,7 @@ package body System.Machine_State_Operations is ...@@ -221,7 +221,7 @@ package body System.Machine_State_Operations is
procedure Pop_Frame (M : Machine_State) is procedure Pop_Frame (M : Machine_State) is
procedure Get_Prev_Invo_Handle ( procedure Get_Prev_Invo_Handle (
Result : out Invo_Handle_Type; -- return value Result : out Invo_Handle_Type; -- return value
ICB : in Invo_Handle_Type); ICB : Invo_Handle_Type);
pragma Interface (External, Get_Prev_Invo_Handle); pragma Interface (External, Get_Prev_Invo_Handle);
...@@ -255,7 +255,7 @@ package body System.Machine_State_Operations is ...@@ -255,7 +255,7 @@ package body System.Machine_State_Operations is
procedure Get_Invo_Handle ( procedure Get_Invo_Handle (
Result : out Invo_Handle_Type; -- return value Result : out Invo_Handle_Type; -- return value
Invo_Context : in Invo_Context_Blk_Type); Invo_Context : Invo_Context_Blk_Type);
pragma Interface (External, Get_Invo_Handle); pragma Interface (External, Get_Invo_Handle);
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2001-2005 Free Software Foundation, Inc. -- -- Copyright (C) 2001-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
-- -- -- --
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
-- This is the default implementation of this package. -- This is the default implementation of this package
-- This implementation assumes that the underlying malloc/free/realloc -- This implementation assumes that the underlying malloc/free/realloc
-- implementation is thread safe, and thus, no additional lock is required. -- implementation is thread safe, and thus, no additional lock is required.
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1991-1994, Florida State University -- -- Copyright (C) 1991-1994, Florida State University --
-- Copyright (C) 1995-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1995-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNARL is free software; you can redistribute it and/or modify it under -- -- GNARL is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -68,6 +68,7 @@ package System.OS_Interface is ...@@ -68,6 +68,7 @@ package System.OS_Interface is
subtype PSZ is Interfaces.C.Strings.chars_ptr; subtype PSZ is Interfaces.C.Strings.chars_ptr;
subtype PCHAR is Interfaces.C.Strings.chars_ptr; subtype PCHAR is Interfaces.C.Strings.chars_ptr;
subtype PVOID is System.Address; subtype PVOID is System.Address;
Null_Void : constant PVOID := System.Null_Address; Null_Void : constant PVOID := System.Null_Address;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1998-2005 Free Software Foundation, Inc. -- -- Copyright (C) 1998-2006 Free Software Foundation, Inc. --
-- -- -- --
-- GNARL is free software; you can redistribute it and/or modify it under -- -- GNARL is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -77,10 +77,10 @@ package body System.OS_Primitives is ...@@ -77,10 +77,10 @@ package body System.OS_Primitives is
procedure Sys_Schdwk procedure Sys_Schdwk
( (
Status : out Cond_Value_Type; Status : out Cond_Value_Type;
Pidadr : in Address := Null_Address; Pidadr : Address := Null_Address;
Prcnam : in String := String'Null_Parameter; Prcnam : String := String'Null_Parameter;
Daytim : in Long_Integer; Daytim : Long_Integer;
Reptim : in Long_Integer := Long_Integer'Null_Parameter Reptim : Long_Integer := Long_Integer'Null_Parameter
); );
pragma Interface (External, Sys_Schdwk); pragma Interface (External, Sys_Schdwk);
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -487,7 +487,7 @@ package body System.Secondary_Stack is ...@@ -487,7 +487,7 @@ package body System.Secondary_Stack is
-- Allocate a secondary stack for the main program to use -- Allocate a secondary stack for the main program to use
-- We make sure that the stack has maximum alignment. Some systems require -- We make sure that the stack has maximum alignment. Some systems require
-- this (e.g. Sun), and in any case it is a good idea for efficiency. -- this (e.g. Sparc), and in any case it is a good idea for efficiency.
Stack : aliased Stack_Id; Stack : aliased Stack_Id;
for Stack'Alignment use Standard'Maximum_Alignment; for Stack'Alignment use Standard'Maximum_Alignment;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -54,7 +54,7 @@ package body System.Soft_Links is ...@@ -54,7 +54,7 @@ package body System.Soft_Links is
-- This is currently only used under VMS. -- This is currently only used under VMS.
NT_TSD : TSD; NT_TSD : TSD;
-- Note: we rely on the default initialization of NT_TSD. -- Note: we rely on the default initialization of NT_TSD
-------------------- --------------------
-- Abort_Defer_NT -- -- Abort_Defer_NT --
...@@ -295,14 +295,14 @@ package body System.Soft_Links is ...@@ -295,14 +295,14 @@ package body System.Soft_Links is
null; null;
end Task_Lock_NT; end Task_Lock_NT;
-------------------- ------------------
-- Task_Unlock_NT -- -- Task_Name_NT --
-------------------- -------------------
procedure Task_Unlock_NT is function Task_Name_NT return String is
begin begin
null; return "main_task";
end Task_Unlock_NT; end Task_Name_NT;
------------------------- -------------------------
-- Task_Termination_NT -- -- Task_Termination_NT --
...@@ -314,6 +314,15 @@ package body System.Soft_Links is ...@@ -314,6 +314,15 @@ package body System.Soft_Links is
null; null;
end Task_Termination_NT; end Task_Termination_NT;
--------------------
-- Task_Unlock_NT --
--------------------
procedure Task_Unlock_NT is
begin
null;
end Task_Unlock_NT;
------------------------- -------------------------
-- Update_Exception_NT -- -- Update_Exception_NT --
------------------------- -------------------------
...@@ -323,13 +332,4 @@ package body System.Soft_Links is ...@@ -323,13 +332,4 @@ package body System.Soft_Links is
Ada.Exceptions.Save_Occurrence (NT_TSD.Current_Excep, X); Ada.Exceptions.Save_Occurrence (NT_TSD.Current_Excep, X);
end Update_Exception_NT; end Update_Exception_NT;
------------------
-- Task_Name_NT --
-------------------
function Task_Name_NT return String is
begin
return "main_task";
end Task_Name_NT;
end System.Soft_Links; end System.Soft_Links;
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 2002-2005 Free Software Foundation, Inc. -- -- Copyright (C) 2002-2006, Free Software Foundation, Inc. --
-- -- -- --
-- This specification is derived from the Ada Reference Manual for use with -- -- This specification is derived from the Ada Reference Manual for use with --
-- GNAT. The copyright notice above, and the license provisions that follow -- -- GNAT. The copyright notice above, and the license provisions that follow --
...@@ -54,6 +54,10 @@ package System.Storage_Elements is ...@@ -54,6 +54,10 @@ package System.Storage_Elements is
type Storage_Offset is range type Storage_Offset is range
-(2 ** (Integer'(Standard'Address_Size) - 1)) .. -(2 ** (Integer'(Standard'Address_Size) - 1)) ..
+(2 ** (Integer'(Standard'Address_Size) - 1)) - Long_Long_Integer'(1); +(2 ** (Integer'(Standard'Address_Size) - 1)) - Long_Long_Integer'(1);
-- Note: the reason for the Long_Long_Integer qualification here is to
-- avoid a bogus ambiguity when this unit is analyzed in an rtsfind
-- context. It may be possible to remove this in the future, but it is
-- certainly harmless in any case ???
subtype Storage_Count is Storage_Offset range 0 .. Storage_Offset'Last; subtype Storage_Count is Storage_Offset range 0 .. Storage_Offset'Last;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1996-2005 Free Software Foundation, Inc. -- -- Copyright (C) 1996-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GARLIC is free software; you can redistribute it and/or modify it under -- -- GARLIC is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -1041,7 +1041,7 @@ package body System.Stream_Attributes is ...@@ -1041,7 +1041,7 @@ package body System.Stream_Attributes is
-- W_AD -- -- W_AD --
---------- ----------
procedure W_AD (Stream : not null access RST; Item : in Fat_Pointer) is procedure W_AD (Stream : not null access RST; Item : Fat_Pointer) is
S : XDR_S_TM; S : XDR_S_TM;
U : XDR_TM; U : XDR_TM;
...@@ -1071,7 +1071,7 @@ package body System.Stream_Attributes is ...@@ -1071,7 +1071,7 @@ package body System.Stream_Attributes is
-- W_AS -- -- W_AS --
---------- ----------
procedure W_AS (Stream : not null access RST; Item : in Thin_Pointer) is procedure W_AS (Stream : not null access RST; Item : Thin_Pointer) is
S : XDR_S_TM; S : XDR_S_TM;
U : XDR_TM := XDR_TM (To_XDR_SA (Item.P1)); U : XDR_TM := XDR_TM (To_XDR_SA (Item.P1));
...@@ -1092,7 +1092,7 @@ package body System.Stream_Attributes is ...@@ -1092,7 +1092,7 @@ package body System.Stream_Attributes is
-- W_B -- -- W_B --
--------- ---------
procedure W_B (Stream : not null access RST; Item : in Boolean) is procedure W_B (Stream : not null access RST; Item : Boolean) is
begin begin
if Item then if Item then
W_SSU (Stream, 1); W_SSU (Stream, 1);
...@@ -1105,7 +1105,7 @@ package body System.Stream_Attributes is ...@@ -1105,7 +1105,7 @@ package body System.Stream_Attributes is
-- W_C -- -- W_C --
--------- ---------
procedure W_C (Stream : not null access RST; Item : in Character) is procedure W_C (Stream : not null access RST; Item : Character) is
S : XDR_S_C; S : XDR_S_C;
pragma Assert (C_L = 1); pragma Assert (C_L = 1);
...@@ -1123,7 +1123,7 @@ package body System.Stream_Attributes is ...@@ -1123,7 +1123,7 @@ package body System.Stream_Attributes is
-- W_F -- -- W_F --
--------- ---------
procedure W_F (Stream : not null access RST; Item : in Float) is procedure W_F (Stream : not null access RST; Item : Float) is
I : constant Precision := Single; I : constant Precision := Single;
E_Size : Integer renames Fields (I).E_Size; E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias; E_Bias : Integer renames Fields (I).E_Bias;
...@@ -1205,7 +1205,7 @@ package body System.Stream_Attributes is ...@@ -1205,7 +1205,7 @@ package body System.Stream_Attributes is
-- W_I -- -- W_I --
--------- ---------
procedure W_I (Stream : not null access RST; Item : in Integer) is procedure W_I (Stream : not null access RST; Item : Integer) is
S : XDR_S_I; S : XDR_S_I;
U : XDR_U; U : XDR_U;
...@@ -1239,7 +1239,7 @@ package body System.Stream_Attributes is ...@@ -1239,7 +1239,7 @@ package body System.Stream_Attributes is
-- W_LF -- -- W_LF --
---------- ----------
procedure W_LF (Stream : not null access RST; Item : in Long_Float) is procedure W_LF (Stream : not null access RST; Item : Long_Float) is
I : constant Precision := Double; I : constant Precision := Double;
E_Size : Integer renames Fields (I).E_Size; E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias; E_Bias : Integer renames Fields (I).E_Bias;
...@@ -1321,7 +1321,7 @@ package body System.Stream_Attributes is ...@@ -1321,7 +1321,7 @@ package body System.Stream_Attributes is
-- W_LI -- -- W_LI --
---------- ----------
procedure W_LI (Stream : not null access RST; Item : in Long_Integer) is procedure W_LI (Stream : not null access RST; Item : Long_Integer) is
S : XDR_S_LI; S : XDR_S_LI;
U : Unsigned; U : Unsigned;
X : Long_Unsigned; X : Long_Unsigned;
...@@ -1367,7 +1367,7 @@ package body System.Stream_Attributes is ...@@ -1367,7 +1367,7 @@ package body System.Stream_Attributes is
-- W_LLF -- -- W_LLF --
----------- -----------
procedure W_LLF (Stream : not null access RST; Item : in Long_Long_Float) is procedure W_LLF (Stream : not null access RST; Item : Long_Long_Float) is
I : constant Precision := Quadruple; I : constant Precision := Quadruple;
E_Size : Integer renames Fields (I).E_Size; E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias; E_Bias : Integer renames Fields (I).E_Bias;
...@@ -1463,7 +1463,7 @@ package body System.Stream_Attributes is ...@@ -1463,7 +1463,7 @@ package body System.Stream_Attributes is
----------- -----------
procedure W_LLI (Stream : not null access RST; procedure W_LLI (Stream : not null access RST;
Item : in Long_Long_Integer) Item : Long_Long_Integer)
is is
S : XDR_S_LLI; S : XDR_S_LLI;
U : Unsigned; U : Unsigned;
...@@ -1511,7 +1511,7 @@ package body System.Stream_Attributes is ...@@ -1511,7 +1511,7 @@ package body System.Stream_Attributes is
----------- -----------
procedure W_LLU (Stream : not null access RST; procedure W_LLU (Stream : not null access RST;
Item : in Long_Long_Unsigned) is Item : Long_Long_Unsigned) is
S : XDR_S_LLU; S : XDR_S_LLU;
U : Unsigned; U : Unsigned;
X : Long_Long_Unsigned := Item; X : Long_Long_Unsigned := Item;
...@@ -1548,7 +1548,7 @@ package body System.Stream_Attributes is ...@@ -1548,7 +1548,7 @@ package body System.Stream_Attributes is
-- W_LU -- -- W_LU --
---------- ----------
procedure W_LU (Stream : not null access RST; Item : in Long_Unsigned) is procedure W_LU (Stream : not null access RST; Item : Long_Unsigned) is
S : XDR_S_LU; S : XDR_S_LU;
U : Unsigned; U : Unsigned;
X : Long_Unsigned := Item; X : Long_Unsigned := Item;
...@@ -1584,7 +1584,7 @@ package body System.Stream_Attributes is ...@@ -1584,7 +1584,7 @@ package body System.Stream_Attributes is
-- W_SF -- -- W_SF --
---------- ----------
procedure W_SF (Stream : not null access RST; Item : in Short_Float) is procedure W_SF (Stream : not null access RST; Item : Short_Float) is
I : constant Precision := Single; I : constant Precision := Single;
E_Size : Integer renames Fields (I).E_Size; E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias; E_Bias : Integer renames Fields (I).E_Bias;
...@@ -1666,7 +1666,7 @@ package body System.Stream_Attributes is ...@@ -1666,7 +1666,7 @@ package body System.Stream_Attributes is
-- W_SI -- -- W_SI --
---------- ----------
procedure W_SI (Stream : not null access RST; Item : in Short_Integer) is procedure W_SI (Stream : not null access RST; Item : Short_Integer) is
S : XDR_S_SI; S : XDR_S_SI;
U : XDR_SU; U : XDR_SU;
...@@ -1702,7 +1702,7 @@ package body System.Stream_Attributes is ...@@ -1702,7 +1702,7 @@ package body System.Stream_Attributes is
procedure W_SSI procedure W_SSI
(Stream : not null access RST; (Stream : not null access RST;
Item : in Short_Short_Integer) Item : Short_Short_Integer)
is is
S : XDR_S_SSI; S : XDR_S_SSI;
U : XDR_SSU; U : XDR_SSU;
...@@ -1732,7 +1732,7 @@ package body System.Stream_Attributes is ...@@ -1732,7 +1732,7 @@ package body System.Stream_Attributes is
procedure W_SSU procedure W_SSU
(Stream : not null access RST; (Stream : not null access RST;
Item : in Short_Short_Unsigned) Item : Short_Short_Unsigned)
is is
U : constant XDR_SSU := XDR_SSU (Item); U : constant XDR_SSU := XDR_SSU (Item);
S : XDR_S_SSU; S : XDR_S_SSU;
...@@ -1747,7 +1747,7 @@ package body System.Stream_Attributes is ...@@ -1747,7 +1747,7 @@ package body System.Stream_Attributes is
-- W_SU -- -- W_SU --
---------- ----------
procedure W_SU (Stream : not null access RST; Item : in Short_Unsigned) is procedure W_SU (Stream : not null access RST; Item : Short_Unsigned) is
S : XDR_S_SU; S : XDR_S_SU;
U : XDR_SU := XDR_SU (Item); U : XDR_SU := XDR_SU (Item);
...@@ -1772,7 +1772,7 @@ package body System.Stream_Attributes is ...@@ -1772,7 +1772,7 @@ package body System.Stream_Attributes is
-- W_U -- -- W_U --
--------- ---------
procedure W_U (Stream : not null access RST; Item : in Unsigned) is procedure W_U (Stream : not null access RST; Item : Unsigned) is
S : XDR_S_U; S : XDR_S_U;
U : XDR_U := XDR_U (Item); U : XDR_U := XDR_U (Item);
...@@ -1797,7 +1797,7 @@ package body System.Stream_Attributes is ...@@ -1797,7 +1797,7 @@ package body System.Stream_Attributes is
-- W_WC -- -- W_WC --
---------- ----------
procedure W_WC (Stream : not null access RST; Item : in Wide_Character) is procedure W_WC (Stream : not null access RST; Item : Wide_Character) is
S : XDR_S_WC; S : XDR_S_WC;
U : XDR_WC; U : XDR_WC;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2001-2005 Free Software Foundation, Inc. -- -- Copyright (C) 2001-2006 Free Software Foundation, Inc. --
-- -- -- --
-- GNARL is free software; you can redistribute it and/or modify it under -- -- GNARL is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -41,7 +41,7 @@ package body System.Traces.Format is ...@@ -41,7 +41,7 @@ package body System.Traces.Format is
-- Format_Trace -- -- Format_Trace --
------------------ ------------------
function Format_Trace (Source : in String) return String_Trace is function Format_Trace (Source : String) return String_Trace is
Length : Integer := Source'Length; Length : Integer := Source'Length;
Result : String_Trace := (others => ' '); Result : String_Trace := (others => ' ');
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 2005, Free Software Foundation, Inc. -- -- Copyright (C) 2005-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -48,4 +48,17 @@ package body System.WCh_Con is ...@@ -48,4 +48,17 @@ package body System.WCh_Con is
raise Constraint_Error; raise Constraint_Error;
end Get_WC_Encoding_Method; end Get_WC_Encoding_Method;
function Get_WC_Encoding_Method (S : String) return WC_Encoding_Method is
begin
if S = "hex" then return WCEM_Hex;
elsif S = "upper" then return WCEM_Upper;
elsif S = "shift_jis" then return WCEM_Shift_JIS;
elsif S = "euc" then return WCEM_EUC;
elsif S = "utf8" then return WCEM_UTF8;
elsif S = "brackets" then return WCEM_Brackets;
else
raise Constraint_Error;
end if;
end Get_WC_Encoding_Method;
end System.WCh_Con; end System.WCh_Con;
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -186,4 +186,9 @@ package System.WCh_Con is ...@@ -186,4 +186,9 @@ package System.WCh_Con is
-- Given a character C, returns corresponding encoding method (see array -- Given a character C, returns corresponding encoding method (see array
-- WC_Encoding_Letters above). Raises Constraint_Error if not in list. -- WC_Encoding_Letters above). Raises Constraint_Error if not in list.
function Get_WC_Encoding_Method (S : String) return WC_Encoding_Method;
-- Given a lower case string that is one of hex, upper, shift_jis, euc,
-- utf8, brackets, return the corresponding encoding method. Raises
-- Constraint_Error if not in list.
end System.WCh_Con; end System.WCh_Con;
...@@ -57,45 +57,6 @@ package body Scn is ...@@ -57,45 +57,6 @@ package body Scn is
procedure Error_Long_Line; procedure Error_Long_Line;
-- Signal error of excessively long line -- Signal error of excessively long line
---------------
-- Post_Scan --
---------------
procedure Post_Scan is
begin
case Token is
when Tok_Char_Literal =>
Token_Node := New_Node (N_Character_Literal, Token_Ptr);
Set_Char_Literal_Value (Token_Node, UI_From_CC (Character_Code));
Set_Chars (Token_Node, Token_Name);
when Tok_Identifier =>
Token_Node := New_Node (N_Identifier, Token_Ptr);
Set_Chars (Token_Node, Token_Name);
when Tok_Real_Literal =>
Token_Node := New_Node (N_Real_Literal, Token_Ptr);
Set_Realval (Token_Node, Real_Literal_Value);
when Tok_Integer_Literal =>
Token_Node := New_Node (N_Integer_Literal, Token_Ptr);
Set_Intval (Token_Node, Int_Literal_Value);
when Tok_String_Literal =>
Token_Node := New_Node (N_String_Literal, Token_Ptr);
Set_Has_Wide_Character (Token_Node, Wide_Character_Found);
Set_Strval (Token_Node, String_Literal_Id);
when Tok_Operator_Symbol =>
Token_Node := New_Node (N_Operator_Symbol, Token_Ptr);
Set_Chars (Token_Node, Token_Name);
Set_Strval (Token_Node, String_Literal_Id);
when others =>
null;
end case;
end Post_Scan;
----------------------- -----------------------
-- Check_End_Of_Line -- -- Check_End_Of_Line --
----------------------- -----------------------
...@@ -345,6 +306,45 @@ package body Scn is ...@@ -345,6 +306,45 @@ package body Scn is
Check_Restriction (No_Obsolescent_Features, New_Node (N_Empty, S)); Check_Restriction (No_Obsolescent_Features, New_Node (N_Empty, S));
end Obsolescent_Check; end Obsolescent_Check;
---------------
-- Post_Scan --
---------------
procedure Post_Scan is
begin
case Token is
when Tok_Char_Literal =>
Token_Node := New_Node (N_Character_Literal, Token_Ptr);
Set_Char_Literal_Value (Token_Node, UI_From_CC (Character_Code));
Set_Chars (Token_Node, Token_Name);
when Tok_Identifier =>
Token_Node := New_Node (N_Identifier, Token_Ptr);
Set_Chars (Token_Node, Token_Name);
when Tok_Real_Literal =>
Token_Node := New_Node (N_Real_Literal, Token_Ptr);
Set_Realval (Token_Node, Real_Literal_Value);
when Tok_Integer_Literal =>
Token_Node := New_Node (N_Integer_Literal, Token_Ptr);
Set_Intval (Token_Node, Int_Literal_Value);
when Tok_String_Literal =>
Token_Node := New_Node (N_String_Literal, Token_Ptr);
Set_Has_Wide_Character (Token_Node, Wide_Character_Found);
Set_Strval (Token_Node, String_Literal_Id);
when Tok_Operator_Symbol =>
Token_Node := New_Node (N_Operator_Symbol, Token_Ptr);
Set_Chars (Token_Node, Token_Name);
Set_Strval (Token_Node, String_Literal_Id);
when others =>
null;
end case;
end Post_Scan;
------------------------------ ------------------------------
-- Scan_Reserved_Identifier -- -- Scan_Reserved_Identifier --
------------------------------ ------------------------------
......
...@@ -558,6 +558,8 @@ package body Sem_Case is ...@@ -558,6 +558,8 @@ package body Sem_Case is
Raises_CE : out Boolean; Raises_CE : out Boolean;
Others_Present : out Boolean) Others_Present : out Boolean)
is is
pragma Assert (Choice_Table'First = 1);
E : Entity_Id; E : Entity_Id;
Enode : Node_Id; Enode : Node_Id;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 1996-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1996-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -93,8 +93,8 @@ package Sem_Case is ...@@ -93,8 +93,8 @@ package Sem_Case is
-- Subtyp is the subtype of the discrete choices. The type against -- Subtyp is the subtype of the discrete choices. The type against
-- which the discrete choices must be resolved is its base type. -- which the discrete choices must be resolved is its base type.
-- --
-- On entry Choice_Table must be big enough to contain all the -- On entry Choice_Table must be big enough to contain all the discrete
-- discrete choices encountered. -- choices encountered. The lower bound of Choice_Table must be one.
-- --
-- On exit Choice_Table contains all the static and non empty discrete -- On exit Choice_Table contains all the static and non empty discrete
-- choices in sorted order. Last_Choice gives the position of the last -- choices in sorted order. Last_Choice gives the position of the last
......
...@@ -652,8 +652,8 @@ package body Sinput.L is ...@@ -652,8 +652,8 @@ package body Sinput.L is
-- We scan past junk to the first interesting compilation unit -- We scan past junk to the first interesting compilation unit
-- token, to see if it is SEPARATE. We ignore WITH keywords during -- token, to see if it is SEPARATE. We ignore WITH keywords during
-- this and also PRIVATE. The reason for ignoring PRIVATE is that -- this and also PRIVATE. The reason for ignoring PRIVATE is that
-- it handles some error situations, and also it is possible that -- it handles some error situations, and also to handle PRIVATE WITH
-- a PRIVATE WITH feature might be approved some time in the future. -- in Ada 2005 mode.
while Token = Tok_With while Token = Tok_With
or else Token = Tok_Private or else Token = Tok_Private
......
...@@ -89,8 +89,8 @@ package body Sinput.P is ...@@ -89,8 +89,8 @@ package body Sinput.P is
-- We scan past junk to the first interesting compilation unit -- We scan past junk to the first interesting compilation unit
-- token, to see if it is SEPARATE. We ignore WITH keywords during -- token, to see if it is SEPARATE. We ignore WITH keywords during
-- this and also PRIVATE. The reason for ignoring PRIVATE is that -- this and also PRIVATE. The reason for ignoring PRIVATE is that
-- it handles some error situations, and also it is possible that -- it handles some error situations, and also to handle PRIVATE WITH
-- a PRIVATE WITH feature might be approved some time in the future. -- in Ada 2005 mode.
while Token = Tok_With while Token = Tok_With
or else Token = Tok_Private or else Token = Tok_Private
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- T e m p l a t e -- -- T e m p l a t e --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -47,9 +47,9 @@ package Treeprs is ...@@ -47,9 +47,9 @@ package Treeprs is
-- by the synonym name. The starting location for a given node type is -- by the synonym name. The starting location for a given node type is
-- found from the corresponding entry in the Pchars_Pos_Array. -- found from the corresponding entry in the Pchars_Pos_Array.
-- The following characters identify the field. These are characters -- The following characters identify the field. These are characters which
-- which could never occur in a field name, so they also mark the -- could never occur in a field name, so they also mark the end of the
-- end of the previous name. -- previous name.
subtype Fchar is Character range '#' .. '9'; subtype Fchar is Character range '#' .. '9';
...@@ -79,9 +79,9 @@ package Treeprs is ...@@ -79,9 +79,9 @@ package Treeprs is
-- Note this table does not include entity field and flags whose access -- Note this table does not include entity field and flags whose access
-- functions are in Einfo (these are handled by the Print_Entity_Info -- functions are in Einfo (these are handled by the Print_Entity_Info
-- procedure in Treepr, which uses the routines in Einfo to get the -- procedure in Treepr, which uses the routines in Einfo to get the proper
-- proper symbolic information). In addition, the following fields are -- symbolic information). In addition, the following fields are handled by
-- handled by Treepr, and do not appear in the Pchars array: -- Treepr, and do not appear in the Pchars array:
-- Analyzed -- Analyzed
-- Cannot_Be_Constant -- Cannot_Be_Constant
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -134,6 +134,7 @@ package body Uintp is ...@@ -134,6 +134,7 @@ package body Uintp is
-- digit of Vec contains the sign, all other digits are always non- -- digit of Vec contains the sign, all other digits are always non-
-- negative. Note that the input may be directly represented, and in -- negative. Note that the input may be directly represented, and in
-- this case Vec will contain the corresponding one or two digit value. -- this case Vec will contain the corresponding one or two digit value.
-- The low bound of Vec is always 1.
function Least_Sig_Digit (Arg : Uint) return Int; function Least_Sig_Digit (Arg : Uint) return Int;
pragma Inline (Least_Sig_Digit); pragma Inline (Least_Sig_Digit);
...@@ -422,6 +423,8 @@ package body Uintp is ...@@ -422,6 +423,8 @@ package body Uintp is
procedure Init_Operand (UI : Uint; Vec : out UI_Vector) is procedure Init_Operand (UI : Uint; Vec : out UI_Vector) is
Loc : Int; Loc : Int;
pragma Assert (Vec'First = Int'(1));
begin begin
if Direct (UI) then if Direct (UI) then
Vec (1) := Direct_Val (UI); Vec (1) := Direct_Val (UI);
...@@ -590,18 +593,28 @@ package body Uintp is ...@@ -590,18 +593,28 @@ package body Uintp is
Num : Nat; Num : Nat;
begin begin
-- Largest negative number has to be handled specially, since it is in
-- Int_Range, but we cannot take the absolute value.
if Input = Uint_Int_First then if Input = Uint_Int_First then
return Int'Size; return Int'Size;
-- For any other number in Int_Range, get absolute value of number
elsif UI_Is_In_Int_Range (Input) then elsif UI_Is_In_Int_Range (Input) then
Num := abs (UI_To_Int (Input)); Num := abs (UI_To_Int (Input));
Bits := 0; Bits := 0;
-- If not in Int_Range then initialize bit count for all low order
-- words, and set number to high order digit.
else else
Bits := Base_Bits * (Uints.Table (Input).Length - 1); Bits := Base_Bits * (Uints.Table (Input).Length - 1);
Num := abs (Udigits.Table (Uints.Table (Input).Loc)); Num := abs (Udigits.Table (Uints.Table (Input).Loc));
end if; end if;
-- Increase bit count for remaining value in Num
while Types.">" (Num, 0) loop while Types.">" (Num, 0) loop
Num := Num / 2; Num := Num / 2;
Bits := Bits + 1; Bits := Bits + 1;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- B o d y -- -- B o d y --
-- -- -- --
-- Copyright (C) 1992-2003 Free Software Foundation, Inc. -- -- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -1431,14 +1431,14 @@ package body Urealp is ...@@ -1431,14 +1431,14 @@ package body Urealp is
return UR_10_36; return UR_10_36;
end Ureal_10_36; end Ureal_10_36;
------------------- ----------------
-- Ureal_M_10_36 -- -- Ureal_2_80 --
------------------- ----------------
function Ureal_M_10_36 return Ureal is function Ureal_2_80 return Ureal is
begin begin
return UR_M_10_36; return UR_2_80;
end Ureal_M_10_36; end Ureal_2_80;
----------------- -----------------
-- Ureal_2_128 -- -- Ureal_2_128 --
...@@ -1449,14 +1449,14 @@ package body Urealp is ...@@ -1449,14 +1449,14 @@ package body Urealp is
return UR_2_128; return UR_2_128;
end Ureal_2_128; end Ureal_2_128;
---------------- -------------------
-- Ureal_2_80 -- -- Ureal_2_M_80 --
---------------- -------------------
function Ureal_2_80 return Ureal is function Ureal_2_M_80 return Ureal is
begin begin
return UR_2_80; return UR_2_M_80;
end Ureal_2_80; end Ureal_2_M_80;
------------------- -------------------
-- Ureal_2_M_128 -- -- Ureal_2_M_128 --
...@@ -1467,15 +1467,6 @@ package body Urealp is ...@@ -1467,15 +1467,6 @@ package body Urealp is
return UR_2_M_128; return UR_2_M_128;
end Ureal_2_M_128; end Ureal_2_M_128;
-------------------
-- Ureal_2_M_80 --
-------------------
function Ureal_2_M_80 return Ureal is
begin
return UR_2_M_80;
end Ureal_2_M_80;
---------------- ----------------
-- Ureal_Half -- -- Ureal_Half --
---------------- ----------------
...@@ -1494,6 +1485,15 @@ package body Urealp is ...@@ -1494,6 +1485,15 @@ package body Urealp is
return UR_M_0; return UR_M_0;
end Ureal_M_0; end Ureal_M_0;
-------------------
-- Ureal_M_10_36 --
-------------------
function Ureal_M_10_36 return Ureal is
begin
return UR_M_10_36;
end Ureal_M_10_36;
----------------- -----------------
-- Ureal_Tenth -- -- Ureal_Tenth --
----------------- -----------------
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment