OSDN Git Service

Daily bump.
[pf3gnuchains/gcc-fork.git] / gcc / tree-browser.c
index a7c80c9..dab7286 100644 (file)
@@ -22,19 +22,14 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 #include "system.h"
 #include "coretypes.h"
-#include "tm.h"
 #include "tree.h"
-#include "tree-inline.h"
 #include "tree-pretty-print.h"
-#include "hashtab.h"
-
 
 #define TB_OUT_FILE stdout
 #define TB_IN_FILE stdin
 #define TB_NIY fprintf (TB_OUT_FILE, "Sorry this command is not yet implemented.\n")
 #define TB_WF fprintf (TB_OUT_FILE, "Warning, this command failed.\n")
 
-
 /* Structures for handling Tree Browser's commands.  */
 #define DEFTBCODE(COMMAND, STRING, HELP)   COMMAND,
 enum TB_Comm_code {
@@ -108,7 +103,7 @@ void browse_tree (tree);
 
 /* Static variables.  */
 static htab_t TB_up_ht;
-static tree TB_history_stack = NULL_TREE;
+static VEC(tree,gc) *TB_history_stack;
 static int TB_verbose = 1;
 
 
@@ -126,7 +121,7 @@ browse_tree (tree begin)
   fprintf (TB_OUT_FILE, "\nTree Browser\n");
 
 #define TB_SET_HEAD(N) do {                                           \
-  TB_history_stack = tree_cons (NULL_TREE, (N), TB_history_stack);    \
+  VEC_safe_push (tree, gc, TB_history_stack, N);                      \
   head = N;                                                           \
   if (TB_verbose)                                                     \
     if (head)                                                         \
@@ -876,11 +871,11 @@ find_node_with_code (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED,
 static tree
 TB_history_prev (void)
 {
-  if (TB_history_stack)
+  if (!VEC_empty (tree, TB_history_stack))
     {
-      TB_history_stack = TREE_CHAIN (TB_history_stack);
-      if (TB_history_stack)
-       return TREE_VALUE (TB_history_stack);
+      tree last = VEC_last (tree, TB_history_stack);
+      VEC_pop (tree, TB_history_stack);
+      return last;
     }
   return NULL_TREE;
 }