OSDN Git Service

2007-04-20 Robert Dewar <dewar@adacore.com>
[pf3gnuchains/gcc-fork.git] / gcc / ada / stand.ads
index c20cfcb..7cae3a0 100644 (file)
@@ -6,8 +6,7 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---                                                                          --
---          Copyright (C) 1992-2001 Free Software Foundation, Inc.          --
+--          Copyright (C) 1992-2005, Free Software Foundation, Inc.         --
 --                                                                          --
 -- 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- --
@@ -17,8 +16,8 @@
 -- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
 -- for  more details.  You should have  received  a copy of the GNU General --
 -- Public License  distributed with GNAT;  see file COPYING.  If not, write --
--- to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, --
--- MA 02111-1307, USA.                                                      --
+-- to  the  Free Software Foundation,  51  Franklin  Street,  Fifth  Floor, --
+-- Boston, MA 02110-1301, USA.                                              --
 --                                                                          --
 -- As a special exception,  if other files  instantiate  generics from this --
 -- unit, or you link  this unit with other files  to produce an executable, --
@@ -60,8 +59,10 @@ package Stand is
       S_Boolean,
       S_Character,
       S_Wide_Character,
+      S_Wide_Wide_Character,
       S_String,
       S_Wide_String,
+      S_Wide_Wide_String,
       S_Duration,
 
       S_Short_Short_Integer,
@@ -93,12 +94,13 @@ package Stand is
       S_Storage_Error,
       S_Tasking_Error,
 
-      --  Binary Operators declared in package Standard.
+      --  Binary Operators declared in package Standard
 
       S_Op_Add,
       S_Op_And,
       S_Op_Concat,
       S_Op_Concatw,
+      S_Op_Concatww,
       S_Op_Divide,
       S_Op_Eq,
       S_Op_Expon,
@@ -251,8 +253,10 @@ package Stand is
    Standard_ASCII               : Entity_Id renames SE (S_ASCII);
    Standard_Character           : Entity_Id renames SE (S_Character);
    Standard_Wide_Character      : Entity_Id renames SE (S_Wide_Character);
+   Standard_Wide_Wide_Character : Entity_Id renames SE (S_Wide_Wide_Character);
    Standard_String              : Entity_Id renames SE (S_String);
    Standard_Wide_String         : Entity_Id renames SE (S_Wide_String);
+   Standard_Wide_Wide_String    : Entity_Id renames SE (S_Wide_Wide_String);
 
    Standard_Boolean             : Entity_Id renames SE (S_Boolean);
    Standard_False               : Entity_Id renames SE (S_False);
@@ -284,6 +288,7 @@ package Stand is
    Standard_Op_And              : Entity_Id renames SE (S_Op_And);
    Standard_Op_Concat           : Entity_Id renames SE (S_Op_Concat);
    Standard_Op_Concatw          : Entity_Id renames SE (S_Op_Concatw);
+   Standard_Op_Concatww         : Entity_Id renames SE (S_Op_Concatww);
    Standard_Op_Divide           : Entity_Id renames SE (S_Op_Divide);
    Standard_Op_Eq               : Entity_Id renames SE (S_Op_Eq);
    Standard_Op_Expon            : Entity_Id renames SE (S_Op_Expon);
@@ -311,6 +316,9 @@ package Stand is
    --  Highest List_Id value used by Standard (including those used by
    --  normal list headers, element list headers, and list elements)
 
+   Boolean_Literals : array (Boolean) of Entity_Id;
+   --  Entities for the two boolean literals, used by the expander
+
    -------------------------------------
    -- Semantic Phase Special Entities --
    -------------------------------------
@@ -327,7 +335,7 @@ package Stand is
    --  This is a type used to represent the return type of procedures
 
    Standard_Exception_Type  : Entity_Id;
-   --  This is a type used to represent the Etype of exceptions.
+   --  This is a type used to represent the Etype of exceptions
 
    Standard_A_String   : Entity_Id;
    --  An access to String type used for building elements of tables
@@ -344,7 +352,7 @@ package Stand is
    --  error messages ("expecting an integer type").
 
    Any_Id : Entity_Id;
-   --  Used to represent some unknown identifier. Used to lable undefined
+   --  Used to represent some unknown identifier. Used to label undefined
    --  identifier references to prevent cascaded errors.
 
    Any_Type : Entity_Id;
@@ -354,13 +362,13 @@ package Stand is
    --  is propagated to avoid cascaded errors from a single type error.
 
    Any_Access : Entity_Id;
-   --  Used to resolve the overloaded literal NULL.
+   --  Used to resolve the overloaded literal NULL
 
    Any_Array : Entity_Id;
    --  Used to represent some unknown array type
 
    Any_Boolean : Entity_Id;
-   --  The context type of conditions in IF and WHILE statements.
+   --  The context type of conditions in IF and WHILE statements
 
    Any_Character : Entity_Id;
    --  Any_Character is used to label character literals, which in general
@@ -378,7 +386,7 @@ package Stand is
    --  Used to represent some unknown fixed-point type
 
    Any_Integer : Entity_Id;
-   --  Used to represent some unknown integer type.
+   --  Used to represent some unknown integer type
 
    Any_Modular : Entity_Id;
    --  Used to represent the result type of a boolean operation on an
@@ -386,10 +394,10 @@ package Stand is
    --  only legal in a modular context.
 
    Any_Numeric : Entity_Id;
-   --  Used to represent some unknown numeric type.
+   --  Used to represent some unknown numeric type
 
    Any_Real : Entity_Id;
-   --  Used to represent some unknown real type.
+   --  Used to represent some unknown real type
 
    Any_Scalar : Entity_Id;
    --  Used to represent some unknown scalar type
@@ -408,7 +416,9 @@ package Stand is
    Universal_Real : Entity_Id;
    --  Entity for universal real type. The bounds of this type correspond to
    --  to the largest supported real type (i.e. Long_Long_Real). It is the
-   --  type used for runtime calculations in type universal real.
+   --  type used for runtime calculations in type universal real. Note that
+   --  this type is always IEEE format, even if Long_Long_Real is Vax_Float
+   --  (and in that case the bounds don't correspond exactly).
 
    Universal_Fixed : Entity_Id;
    --  Entity for universal fixed type. This is a type with  arbitrary