OSDN Git Service

* doc/install.texi (Specific, mips-sgi-irix5): Document IRIX 5
[pf3gnuchains/gcc-fork.git] / gcc / ada / treepr.ads
1 ------------------------------------------------------------------------------
2 --                                                                          --
3 --                         GNAT COMPILER COMPONENTS                         --
4 --                                                                          --
5 --                               T R E E P R                                --
6 --                                                                          --
7 --                                 S p e c                                  --
8 --                                                                          --
9 --          Copyright (C) 1992-2007, Free Software Foundation, Inc.         --
10 --                                                                          --
11 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
12 -- terms of the  GNU General Public License as published  by the Free Soft- --
13 -- ware  Foundation;  either version 3,  or (at your option) any later ver- --
14 -- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
17 -- for  more details.  You should have  received  a copy of the GNU General --
18 -- Public License  distributed with GNAT; see file COPYING3.  If not, go to --
19 -- http://www.gnu.org/licenses for a complete copy of the license.          --
20 --                                                                          --
21 -- GNAT was originally developed  by the GNAT team at  New York University. --
22 -- Extensive contributions were provided by Ada Core Technologies Inc.      --
23 --                                                                          --
24 ------------------------------------------------------------------------------
25
26 with Types; use Types;
27 package Treepr is
28
29 --  This package provides printing routines for the abstract syntax tree
30 --  These routines are intended only for debugging use.
31
32    procedure Tree_Dump;
33    --  This routine is called from the GNAT main program to dump trees as
34    --  requested by debug options (including tree of Standard if requested).
35
36    procedure Print_Tree_Node (N : Node_Id; Label : String := "");
37    --  Prints a single tree node, without printing descendants. The Label
38    --  string is used to preface each line of the printed output.
39
40    procedure Print_Tree_List (L : List_Id);
41    --  Prints a single node list, without printing the descendants of any
42    --  of the nodes in the list
43
44    procedure Print_Tree_Elist (E : Elist_Id);
45    --  Prints a single node list, without printing the descendants of any
46    --  of the nodes in the list
47
48    procedure Print_Node_Subtree (N : Node_Id);
49    --  Prints the subtree routed at a specified tree node, including all
50    --  referenced descendants.
51
52    procedure Print_List_Subtree (L : List_Id);
53    --  Prints the subtree consisting of the given node list and all its
54    --  referenced descendants.
55
56    procedure Print_Elist_Subtree (E : Elist_Id);
57    --  Prints the subtree consisting of the given element list and all its
58    --  referenced descendants.
59
60    procedure pe (E : Elist_Id);
61    pragma Export (Ada, pe);
62    --  Debugging procedure (to be called within gdb), same as Print_Tree_Elist
63
64    procedure pl (L : Int);
65    pragma Export (Ada, pl);
66    --  Debugging procedure (to be called within gdb), same as Print_Tree_List,
67    --  except that you can use e.g. 66 instead of -99999966. In other words
68    --  for the positive case we fill out to 8 digits on the left and add a
69    --  minus sign. This just saves some typing in the debugger.
70
71    procedure pn (N : Node_Id);
72    pragma Export (Ada, pn);
73    --  Debugging procedure (to be called within gdb)
74    --  same as Print_Tree_Node with Label = ""
75
76    procedure pt (N : Node_Id);
77    pragma Export (Ada, pt);
78    --  Debugging procedure (to be called within gdb)
79    --  same as Print_Node_Subtree
80
81 end Treepr;