template instantiation of a member function of a class template.
FIXME -= 2;
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83520
91177308-0d34-0410-b5e6-
96231b3b80d8
InstantiateFunctionDefinition(D.getIdentifierLoc(), Specialization,
false);
- // FIXME: setTemplateSpecializationKind doesn't (yet) work for
- // non-templated member functions.
- if (!Specialization->getPrimaryTemplate())
- break;
-
Specialization->setTemplateSpecializationKind(TSK);
break;
}
Record->getInstantiatedFromMemberClass(),
TemplateArgs,
TSK);
- else
- InstantiateClassMembers(PointOfInstantiation, Record, TemplateArgs,
- TSK);
+
+ InstantiateClassMembers(PointOfInstantiation, Record, TemplateArgs,
+ TSK);
}
}
}
extern template void X1<const void*>::g(const void*);
void g_X1_2(X1<const void *> x1, const void *ptr) {
- // FIXME: This should not instantiate of x1<const void*>::g
-// x1.g(ptr);
+ x1.g(ptr);
}