aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/decl2.c
diff options
context:
space:
mode:
authorMike Stump <mrs@gcc.gnu.org>1996-03-08 00:38:10 +0000
committerMike Stump <mrs@gcc.gnu.org>1996-03-08 00:38:10 +0000
commite76a26469d6b464cf25d43af1eb4f1ebbc4c72a0 (patch)
tree938d65a89cf25e2714899dccc47ec5021d7a0de1 /gcc/cp/decl2.c
parent838b5ca862aea53720a1a3b788a2e9f80226aa25 (diff)
downloadgcc-e76a26469d6b464cf25d43af1eb4f1ebbc4c72a0.zip
gcc-e76a26469d6b464cf25d43af1eb4f1ebbc4c72a0.tar.gz
gcc-e76a26469d6b464cf25d43af1eb4f1ebbc4c72a0.tar.bz2
85th Cygnus<->FSF merge
From-SVN: r11497
Diffstat (limited to 'gcc/cp/decl2.c')
-rw-r--r--gcc/cp/decl2.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index e137f7e..23926d6 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -2991,6 +2991,7 @@ finish_file ()
expand_assignment (decl, init, 0, 0);
DECL_CLASS_CONTEXT (current_function_decl) = NULL_TREE;
+ DECL_STATIC_FUNCTION_P (current_function_decl) = 0;
}
else if (TREE_CODE (decl) == SAVE_EXPR)
{
@@ -3099,6 +3100,13 @@ finish_file ()
tree *p = &saved_inlines;
reconsider = 0;
+ /* We need to do this each time so that newly completed template
+ types don't wind up at the front of the list. Sigh. */
+ vars = build_decl (TYPE_DECL, make_anon_name (), integer_type_node);
+ DECL_IGNORED_P (vars) = 1;
+ SET_DECL_ARTIFICIAL (vars);
+ pushdecl (vars);
+
walk_vtables ((void (*)())0, finish_vtable_vardecl);
while (*p)