================
@@ -4264,7 +4264,8 @@ Sema::InstantiateClassMembers(SourceLocation
PointOfInstantiation,
if (FunctionDecl *Pattern =
Function->getInstantiatedFromMemberFunction()) {
- if (Function->isIneligibleOrNotSelected())
+ if (!Instantiation->getDeclContext()->isDependentContext() &&
----------------
zyn0217 wrote:
It does instantiate the function declarations in the dependent context. In fact
this fixes a bug introduced in clang 15: we skipped the instantiation of local
classes here because they're not correctly marked "eligible" because the
context the class lives in is dependent.
On the other hand I'm not quite clear if it is suitable to jump past any
instantiations at all. it might be an incorrect optimization, but again I'm not
quite familiar with the proposal that introduced this line.
https://github.com/llvm/llvm-project/pull/134038
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits