aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2002-10-31 16:07:32 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2002-10-31 16:07:32 +0000
commit14b4829dfde2a20e4f8277eeaaa00e119ba97471 (patch)
tree79a270860192fd7f71f8b6195aa154937df94a9f
parentf7e5dfbd025de3610853a55655129e10fd9076b6 (diff)
downloadgcc-14b4829dfde2a20e4f8277eeaaa00e119ba97471.zip
gcc-14b4829dfde2a20e4f8277eeaaa00e119ba97471.tar.gz
gcc-14b4829dfde2a20e4f8277eeaaa00e119ba97471.tar.bz2
cp-tree.h (lang_decl_flags): Remove init_priority.
* cp-tree.h (lang_decl_flags): Remove init_priority. (lang_decl): Add delta. (GLOBAL_INIT_PRIORITY): Remove. (THUNK_DELTA): Revise definition. * decl2.c (start_objects): Don't set GLOBAL_INIT_PRIORITY. * dump.c (cp_dump_tree): Don't dump it. From-SVN: r58680
-rw-r--r--gcc/cp/ChangeLog9
-rw-r--r--gcc/cp/cp-tree.h18
-rw-r--r--gcc/cp/decl2.c1
-rw-r--r--gcc/cp/dump.c1
4 files changed, 15 insertions, 14 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index d53fd4d..0f7653c 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,12 @@
+2002-10-31 Mark Mitchell <mark@codesourcery.com>
+
+ * cp-tree.h (lang_decl_flags): Remove init_priority.
+ (lang_decl): Add delta.
+ (GLOBAL_INIT_PRIORITY): Remove.
+ (THUNK_DELTA): Revise definition.
+ * decl2.c (start_objects): Don't set GLOBAL_INIT_PRIORITY.
+ * dump.c (cp_dump_tree): Don't dump it.
+
2002-10-30 Mark Mitchell <mark@codesourcery.com>
PR c++/8160
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index d9bde84..f74c58e 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -1747,10 +1747,6 @@ struct lang_decl_flags GTY(())
/* For VAR_DECL in function, this is DECL_DISCRIMINATOR. */
int discriminator;
- /* In a namespace-scope FUNCTION_DECL, this is
- GLOBAL_INIT_PRIORITY. */
- int init_priority;
-
/* In a FUNCTION_DECL for which DECL_THUNK_P holds, this is
THUNK_VCALL_OFFSET. */
tree GTY((tag ("2"))) vcall_offset;
@@ -1775,6 +1771,10 @@ struct lang_decl GTY(())
/* In a FUNCTION_DECL, this is DECL_CLONED_FUNCTION. */
tree cloned_function;
+ /* In a FUNCTION_DECL for which THUNK_P holds, this is
+ THUNK_DELTA. */
+ HOST_WIDE_INT delta;
+
/* In an overloaded operator, this is the value of
DECL_OVERLOADED_OPERATOR_P. */
enum tree_code operator_code;
@@ -2689,13 +2689,6 @@ struct lang_decl GTY(())
#define DECL_GLOBAL_DTOR_P(NODE) \
(DECL_LANG_SPECIFIC (NODE)->decl_flags.global_dtor_p)
-/* If DECL_GLOBAL_CTOR_P or DECL_GLOBAL_DTOR_P holds, this macro
- returns the initialization priority for the function. Constructors
- with lower numbers should be run first. Destructors should be run
- in the reverse order of constructors. */
-#define GLOBAL_INIT_PRIORITY(NODE) \
- (LANG_DECL_U2_CHECK (NODE, 1)->init_priority)
-
/* Accessor macros for C++ template decl nodes. */
/* The DECL_TEMPLATE_PARMS are a list. The TREE_PURPOSE of each node
@@ -2935,7 +2928,8 @@ struct lang_decl GTY(())
/* An integer indicating how many bytes should be subtracted from the
`this' pointer when this function is called. */
-#define THUNK_DELTA(DECL) (DECL_CHECK (DECL)->decl.u1.i)
+#define THUNK_DELTA(DECL) \
+ (DECL_LANG_SPECIFIC (DECL)->u.f.delta)
/* A tree indicating how many bytes should be subtracted from the
vtable for the `this' pointer to find the vcall offset. (The vptr
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index afa65a0..9461174 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -2144,7 +2144,6 @@ start_objects (method_type, initp)
else
DECL_GLOBAL_DTOR_P (current_function_decl) = 1;
DECL_LANG_SPECIFIC (current_function_decl)->decl_flags.u2sel = 1;
- GLOBAL_INIT_PRIORITY (current_function_decl) = initp;
body = begin_compound_stmt (/*has_no_scope=*/0);
diff --git a/gcc/cp/dump.c b/gcc/cp/dump.c
index 0b404a1..c4472b0 100644
--- a/gcc/cp/dump.c
+++ b/gcc/cp/dump.c
@@ -323,7 +323,6 @@ cp_dump_tree (dump_info, t)
dump_string (di, "global init");
if (DECL_GLOBAL_DTOR_P (t))
dump_string (di, "global fini");
- dump_int (di, "prio", GLOBAL_INIT_PRIORITY (t));
}
if (DECL_FRIEND_PSEUDO_TEMPLATE_INSTANTIATION (t))
dump_string (di, "pseudo tmpl");