Michael137 wrote: > Another possible solution: Use two `NonEquivalentDecls` sets, one for > `IgnoreTemplateParmDepth` = true and one for false. This may use less memory > (no rarely used third value in the key) but requires more code changes. > Probably use these two caches only in `ASTImporter` where the correct one can > be passed to `StructuralEquivalenceContext`.
I guess another alternative would be to not cache equivalence of friends (I think that's the only time we ignore the template depth?). But that might not be desirable either. Your current approach seems reasonable to me https://github.com/llvm/llvm-project/pull/115518 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits