From 0978790f4fe82534547b0ee4c763caabbae578d7 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Thu, 19 Mar 1998 02:54:39 +0000 Subject: [PATCH] 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 --- gcc/cp/ChangeLog | 3 +++ gcc/cp/pt.c | 8 +++++--- 2 files changed, 8 insertions(+), 3 deletions(-) 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; -- 2.47.3