[clang] [clang-tools-extra] [clang] Implement CWG2398 provisional TTP matching to class templates (PR #92855)

James Y Knight via cfe-commits cfe-commits at lists.llvm.org
Thu May 23 15:03:43 PDT 2024


jyknight wrote:

Heads up: this commit has triggered some weird errors for a compile, but only when clang header modules are enabled. A std::vector, that's built through a large amount of template gunk that definitely involves template template parameter matching, ends up failing vector's "Allocator::value_type must be same type as value_type" static assertion -- the vector's allocator's value_type seems to be some unrelated type. But, only when modules are enabled.

That seems to _probably_ indicate a bug in this commit (presumably related to AST serialization or deserialization?), but I don't have a test-case, and, that's harder to get for issues that only arise with modules enabled...

If this very vague and unhelpful description makes you think "oh, I see where the problem likely is!", then great! But, otherwise, I'll see if I can create a test case...

https://github.com/llvm/llvm-project/pull/92855


More information about the cfe-commits mailing list