From: Jason Merrill Date: Sat, 25 Jul 1998 03:19:28 +0000 (+0000) Subject: decl.c (lookup_name_real): OK, do return the from_obj value unless got_object depends... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b8b1a3c1fc085961a6f9f1ef64501e5c380ff9de;p=gcc.git decl.c (lookup_name_real): OK, do return the from_obj value unless got_object depends on template parms. * decl.c (lookup_name_real): OK, do return the from_obj value unless got_object depends on template parms. From-SVN: r21370 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 127c8e9998c..c44d18a9627 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ 1998-07-24 Jason Merrill + * decl.c (lookup_name_real): OK, do return the from_obj value + unless got_object depends on template parms. + * parse.y (nested_name_specifier_1): Pull out the TYPE_MAIN_VARIANT. * pt.c (coerce_template_parms): Also complain about local enums. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index f25c7008d63..0149679cb9e 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -5085,8 +5085,11 @@ lookup_name_real (name, prefer_type, nonclass, namespaces_only) TREE_TYPE (val)); } - /* We don't change val to from_obj here because that breaks - implicit typename for destructor calls. */ + /* We don't change val to from_obj if got_object depends on + template parms because that breaks implicit typename for + destructor calls. */ + if (! uses_template_parms (got_object)) + val = got_object; } if ((TREE_CODE (val) == TEMPLATE_DECL && looking_for_template)