From: Jason Merrill Date: Thu, 19 Mar 1998 02:54:39 +0000 (+0000) Subject: pt.c (tsubst_copy, CONST_DECL): Don't bother tsubsting a function context. X-Git-Tag: prereleases/egcs-1.1-prerelease~2037 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0978790f4fe82534547b0ee4c763caabbae578d7;p=thirdparty%2Fgcc.git pt.c (tsubst_copy, CONST_DECL): Don't bother tsubsting a function context. * pt.c (tsubst_copy, CONST_DECL): Don't bother tsubsting a function context. From-SVN: r18702 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 5c45847a8b16..45e0de07a094 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ Thu Mar 19 02:27:48 1998 Jason Merrill + * pt.c (tsubst_copy, CONST_DECL): Don't bother tsubsting + a function context. + * decl.c (store_bindings): Use free_binding_vecs. (pop_from_top_level): Likewise. diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 865893e720e7..7609ee51c55b 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -4421,10 +4421,12 @@ tsubst_copy (t, args, in_decl) case FIELD_DECL: if (DECL_CONTEXT (t)) { - tree ctx = tsubst (DECL_CONTEXT (t), args, in_decl); - if (ctx == current_function_decl) + tree ctx; + if (TREE_CODE (DECL_CONTEXT (t)) == FUNCTION_DECL) return lookup_name (DECL_NAME (t), 0); - else if (ctx != DECL_CONTEXT (t)) + + ctx = tsubst (DECL_CONTEXT (t), args, in_decl); + if (ctx != DECL_CONTEXT (t)) return lookup_field (ctx, DECL_NAME (t), 0, 0); } return t;