OSDN Git Service

* decl.c (lookup_name_real): OK, do return the from_obj value
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 25 Jul 1998 03:19:28 +0000 (03:19 +0000)
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 25 Jul 1998 03:19:28 +0000 (03:19 +0000)
unless got_object depends on template parms.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@21370 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cp/ChangeLog
gcc/cp/decl.c

index 127c8e9..c44d18a 100644 (file)
@@ -1,5 +1,8 @@
 1998-07-24  Jason Merrill  <jason@yorick.cygnus.com>
 
+       * 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.
index f25c700..0149679 100644 (file)
@@ -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)