aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/decl2.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 0aafd37..3d01f81 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2000-09-04 Nathan Sidwell <nathan@codesourcery.com>
+
+ * decl2.c (arg_assoc): Deal with COMPONENT_REFs inside
+ TEMPLATE_ID_EXPRs.
+
2000-09-03 Mark Mitchell <mark@codesourcery.com>
* operators.def (ALIGNOF_EXPR, MAX_EXPR, MIN_EXPR): Change
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index 90c6c3e..417348c 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -5042,6 +5042,9 @@ arg_assoc (k, n)
tree ctx;
tree arg;
+ if (TREE_CODE (template) == COMPONENT_REF)
+ template = TREE_OPERAND (template, 1);
+
/* First, the template. There may actually be more than one if
this is an overloaded function template. But, in that case,
we only need the first; all the functions will be in the same