sdkrystian wrote: > Could you dive a little deeper why this change is necessary? E.g. does the > most recent redecl have some properties that the canonical declaration (which > would be the first one) does not?
@ilya-biryukov When instantiating a template from a member template that was explicitly specialized for a given implicitly instantiated specialization of its enclosing class template, we need to keep track of which template was actually used as the primary template (since we consider the specialization to be a redeclaration of the (instantiated) member template). Since the initial declaration & the specialized declaration have different template depths, this (may) result in `getTemplateInstantiationArgs` returning an incomplete set of template arguments for an entity. https://github.com/llvm/llvm-project/pull/111852 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits