https://github.com/llvm/llvm-project/issues/46505
The presence of a lambda in an argument template list ignored the [] as a lambda at all, this caused the contents of the <> to be incorrectly analyzed.
struct Y : X < [] {
return 0;
} > {};Fixes: #46505
Fewer ifs and lines.