OSDN Git Service

* gcc.dg/tree-ssa/ssa-dse-10.c: Clean up all dse dump files.
[pf3gnuchains/gcc-fork.git] / gcc / ada / lib-xref.ads
index 154d88e..670eaf4 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 S p e c                                  --
 --                                                                          --
---          Copyright (C) 1998-2005, Free Software Foundation, Inc.         --
+--          Copyright (C) 1998-2006, 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- --
@@ -114,6 +114,10 @@ package Lib.Xref is
    --          enumeration literals (points to enum type)  LR={}
    --          objects and components (points to type)     LR={}
 
+   --          For a type that implements multiple interfaces, there is an
+   --          entry of the form  LR=<> for each of the interfaces appearing
+   --          in the type declaration.
+
    --          In the above list LR shows the brackets used in the output,
    --          which has one of the two following forms:
 
@@ -379,93 +383,95 @@ package Lib.Xref is
    --  indicating procedures and functions. If the operation is abstract,
    --  these letters are replaced in the xref by 'x' and 'y' respectively.
 
-   Xref_Entity_Letters : array (Entity_Kind) of Character := (
-      E_Void                             => ' ',
-      E_Variable                         => '*',
-      E_Component                        => '*',
-      E_Constant                         => '*',
-      E_Discriminant                     => '*',
-
-      E_Loop_Parameter                   => '*',
-      E_In_Parameter                     => '*',
-      E_Out_Parameter                    => '*',
-      E_In_Out_Parameter                 => '*',
-      E_Generic_In_Out_Parameter         => '*',
-
-      E_Generic_In_Parameter             => '*',
-      E_Named_Integer                    => 'N',
-      E_Named_Real                       => 'N',
-      E_Enumeration_Type                 => 'E',  -- B for boolean
-      E_Enumeration_Subtype              => 'E',  -- B for boolean
-
-      E_Signed_Integer_Type              => 'I',
-      E_Signed_Integer_Subtype           => 'I',
-      E_Modular_Integer_Type             => 'M',
-      E_Modular_Integer_Subtype          => 'M',
-      E_Ordinary_Fixed_Point_Type        => 'O',
-
-      E_Ordinary_Fixed_Point_Subtype     => 'O',
-      E_Decimal_Fixed_Point_Type         => 'D',
-      E_Decimal_Fixed_Point_Subtype      => 'D',
-      E_Floating_Point_Type              => 'F',
-      E_Floating_Point_Subtype           => 'F',
-
-      E_Access_Type                      => 'P',
-      E_Access_Subtype                   => 'P',
-      E_Access_Attribute_Type            => 'P',
-      E_Allocator_Type                   => ' ',
-      E_General_Access_Type              => 'P',
-
-      E_Access_Subprogram_Type           => 'P',
-      E_Access_Protected_Subprogram_Type => 'P',
-      E_Anonymous_Access_Subprogram_Type => ' ',
+   Xref_Entity_Letters : array (Entity_Kind) of Character :=
+     (E_Void                                       => ' ',
+      E_Variable                                   => '*',
+      E_Component                                  => '*',
+      E_Constant                                   => '*',
+      E_Discriminant                               => '*',
+
+      E_Loop_Parameter                             => '*',
+      E_In_Parameter                               => '*',
+      E_Out_Parameter                              => '*',
+      E_In_Out_Parameter                           => '*',
+      E_Generic_In_Out_Parameter                   => '*',
+
+      E_Generic_In_Parameter                       => '*',
+      E_Named_Integer                              => 'N',
+      E_Named_Real                                 => 'N',
+      E_Enumeration_Type                           => 'E',  -- B for boolean
+      E_Enumeration_Subtype                        => 'E',  -- B for boolean
+
+      E_Signed_Integer_Type                        => 'I',
+      E_Signed_Integer_Subtype                     => 'I',
+      E_Modular_Integer_Type                       => 'M',
+      E_Modular_Integer_Subtype                    => 'M',
+      E_Ordinary_Fixed_Point_Type                  => 'O',
+
+      E_Ordinary_Fixed_Point_Subtype               => 'O',
+      E_Decimal_Fixed_Point_Type                   => 'D',
+      E_Decimal_Fixed_Point_Subtype                => 'D',
+      E_Floating_Point_Type                        => 'F',
+      E_Floating_Point_Subtype                     => 'F',
+
+      E_Access_Type                                => 'P',
+      E_Access_Subtype                             => 'P',
+      E_Access_Attribute_Type                      => 'P',
+      E_Allocator_Type                             => ' ',
+      E_General_Access_Type                        => 'P',
+
+      E_Access_Subprogram_Type                     => 'P',
+      E_Access_Protected_Subprogram_Type           => 'P',
+      E_Anonymous_Access_Subprogram_Type           => ' ',
       E_Anonymous_Access_Protected_Subprogram_Type => ' ',
-      E_Anonymous_Access_Type            => ' ',
-      E_Array_Type                       => 'A',
-      E_Array_Subtype                    => 'A',
-
-      E_String_Type                      => 'S',
-      E_String_Subtype                   => 'S',
-      E_String_Literal_Subtype           => ' ',
-      E_Class_Wide_Type                  => 'C',
-
-      E_Class_Wide_Subtype               => 'C',
-      E_Record_Type                      => 'R',
-      E_Record_Subtype                   => 'R',
-      E_Record_Type_With_Private         => 'R',
-      E_Record_Subtype_With_Private      => 'R',
-
-      E_Private_Type                     => '+',
-      E_Private_Subtype                  => '+',
-      E_Limited_Private_Type             => '+',
-      E_Limited_Private_Subtype          => '+',
-      E_Incomplete_Type                  => '+',
-
-      E_Task_Type                        => 'T',
-      E_Task_Subtype                     => 'T',
-      E_Protected_Type                   => 'W',
-      E_Protected_Subtype                => 'W',
-      E_Exception_Type                   => ' ',
-
-      E_Subprogram_Type                  => ' ',
-      E_Enumeration_Literal              => 'n',
-      E_Function                         => 'V',
-      E_Operator                         => 'V',
-      E_Procedure                        => 'U',
-
-      E_Entry                            => 'Y',
-      E_Entry_Family                     => 'Y',
-      E_Block                            => 'q',
-      E_Entry_Index_Parameter            => '*',
-      E_Exception                        => 'X',
-
-      E_Generic_Function                 => 'v',
-      E_Generic_Package                  => 'k',
-      E_Generic_Procedure                => 'u',
-      E_Label                            => 'L',
-      E_Loop                             => 'l',
-
-      E_Package                          => 'K',
+      E_Anonymous_Access_Type                      => ' ',
+
+      E_Array_Type                                 => 'A',
+      E_Array_Subtype                              => 'A',
+      E_String_Type                                => 'S',
+      E_String_Subtype                             => 'S',
+      E_String_Literal_Subtype                     => ' ',
+
+      E_Class_Wide_Type                            => 'C',
+      E_Class_Wide_Subtype                         => 'C',
+      E_Record_Type                                => 'R',
+      E_Record_Subtype                             => 'R',
+      E_Record_Type_With_Private                   => 'R',
+
+      E_Record_Subtype_With_Private                => 'R',
+      E_Private_Type                               => '+',
+      E_Private_Subtype                            => '+',
+      E_Limited_Private_Type                       => '+',
+      E_Limited_Private_Subtype                    => '+',
+
+      E_Incomplete_Type                            => '+',
+      E_Incomplete_Subtype                         => '+',
+      E_Task_Type                                  => 'T',
+      E_Task_Subtype                               => 'T',
+      E_Protected_Type                             => 'W',
+
+      E_Protected_Subtype                          => 'W',
+      E_Exception_Type                             => ' ',
+      E_Subprogram_Type                            => ' ',
+      E_Enumeration_Literal                        => 'n',
+      E_Function                                   => 'V',
+
+      E_Operator                                   => 'V',
+      E_Procedure                                  => 'U',
+      E_Entry                                      => 'Y',
+      E_Entry_Family                               => 'Y',
+      E_Block                                      => 'q',
+
+      E_Entry_Index_Parameter                      => '*',
+      E_Exception                                  => 'X',
+      E_Generic_Function                           => 'v',
+      E_Generic_Package                            => 'k',
+      E_Generic_Procedure                          => 'u',
+
+      E_Label                                      => 'L',
+      E_Loop                                       => 'l',
+      E_Return_Statement                           => ' ',
+      E_Package                                    => 'K',
 
       --  The following entities are not ones to which we gather
       --  cross-references, since it does not make sense to do so
@@ -473,11 +479,11 @@ package Lib.Xref is
       --  Indeed the occurrence of the body entity is considered to
       --  be a reference to the spec entity.
 
-      E_Package_Body                     => ' ',
-      E_Protected_Object                 => ' ',
-      E_Protected_Body                   => ' ',
-      E_Task_Body                        => ' ',
-      E_Subprogram_Body                  => ' ');
+      E_Package_Body                               => ' ',
+      E_Protected_Object                           => ' ',
+      E_Protected_Body                             => ' ',
+      E_Task_Body                                  => ' ',
+      E_Subprogram_Body                            => ' ');
 
    --  The following table is for information purposes. It shows the
    --  use of each character appearing as an entity type.
@@ -491,7 +497,7 @@ package Lib.Xref is
    --    e     non-Boolean enumeration object  non_Boolean enumeration type
    --    f     floating-point object           floating-point type
    --    g     (unused)                        (unused)
-   --    h     (unused)                        Abstract type
+   --    h     Interface (Ada 2005)            Abstract type
    --    i     signed integer object           signed integer type
    --    j     (unused)                        (unused)
    --    k     generic package                 package