diff options
Diffstat (limited to 'gcc/cp/search.c')
-rw-r--r-- | gcc/cp/search.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/cp/search.c b/gcc/cp/search.c index 1176b3e6f4e..90cd2438b36 100644 --- a/gcc/cp/search.c +++ b/gcc/cp/search.c @@ -1203,6 +1203,12 @@ lookup_member (tree xbasetype, tree name, int protect, bool want_type, } type = complete_type (type); + + /* Make sure we're looking for a member of the current instantiation in the + right partial specialization. */ + if (flag_concepts && dependent_type_p (type)) + type = currently_open_class (type); + if (!basetype_path) basetype_path = TYPE_BINFO (type); |