conrade-ctc wrote:

> Please take a look how this is done in cling in a very non-invasive way to do 
> that.

Thanks. cling gets the instantiations from the existing consumer calls, so Sema 
needs no change. On unload, it removes the new specializations from their 
templates. This PR resets them in place instead.

#223305 covers the same ground, including class templates. I think a second 
mechanism would collide. Which do you prefer?

1. The cling way, in `ASTDeclUnmerger` as in #218149.
2. Fold this into #223305. This PR then keeps only the parts that any rollback 
needs: the two `FIXME: Notify listener` fixes and the 
`VarTemplateSpecializationDecl` setter.

Either way, the tests for Eli's poisoned cases can move to the change that 
lands.


https://github.com/llvm/llvm-project/pull/226253
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to