*** empty log message ***
authorRichard Stallman <rms@gnu.org>
Sun, 5 Jul 1992 03:49:06 +0000 (03:49 +0000)
committerRichard Stallman <rms@gnu.org>
Sun, 5 Jul 1992 03:49:06 +0000 (03:49 +0000)
From-SVN: r1440

gcc/tree.c
gcc/tree.h

index 3d3149c..4eea2c9 100644 (file)
@@ -214,6 +214,9 @@ static tree hash_table[MAX_HASH_TABLE];     /* id hash buckets */
 /* 0 while creating built-in identifiers.  */
 static int do_identifier_warnings;
 
+/* Unique id for next decl created.  */
+static int next_decl_uid;
+
 extern char *mode_name[];
 
 void gcc_obstack_init ();
@@ -856,6 +859,7 @@ make_node (code)
        DECL_ALIGN (t) = 1;
       DECL_SOURCE_LINE (t) = lineno;
       DECL_SOURCE_FILE (t) = (input_filename) ? input_filename : "<built-in>";
+      DECL_UID (t) = next_decl_uid++;
       break;
 
     case 't':
index c4a51ee..b50cc1c 100644 (file)
@@ -708,6 +708,9 @@ struct tree_type
    writing debugging information about vfield and vbase decls for C++.  */
 #define DECL_FCONTEXT(NODE) ((NODE)->decl.vindex)
 
+/* Every ..._DECL node gets a unique number.  */
+#define DECL_UID(NODE) ((NODE)->decl.uid)
+
 /* Nonzero in a VAR_DECL or PARM_DECL means this decl was made by inlining;
    suppress any warnings about shadowing some other variable.  */
 #define DECL_FROM_INLINE(NODE) ((NODE)->decl.from_inline_flag)
@@ -777,6 +780,7 @@ struct tree_decl
   char *filename;
   int linenum;
   union tree_node *size;
+  unsigned int uid;
 #ifdef ONLY_INT_FIELDS
   int mode : 8;
 #else
@@ -856,6 +860,7 @@ extern char *oballoc ();
 extern char *permalloc ();
 extern char *savealloc ();
 extern char *xmalloc ();
+extern char *xrealloc ();
 extern void free ();
 
 /* Lowest level primitive for allocating a node.
@@ -971,6 +976,7 @@ extern tree non_lvalue ();
 
 extern tree convert ();
 extern tree size_in_bytes ();
+extern int int_size_in_bytes ();
 extern tree size_binop ();
 extern tree size_int ();
 extern tree round_up ();