From: Richard Stallman Date: Sun, 5 Jul 1992 03:49:06 +0000 (+0000) Subject: *** empty log message *** X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0e77444b398d3843689afa6bd40e9eaefc50af63;p=gcc.git *** empty log message *** From-SVN: r1440 --- diff --git a/gcc/tree.c b/gcc/tree.c index 3d3149c0417..4eea2c9c949 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -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 : ""; + DECL_UID (t) = next_decl_uid++; break; case 't': diff --git a/gcc/tree.h b/gcc/tree.h index c4a51ee20cd..b50cc1c6d72 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -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 ();