kongy wrote:

There is a case that becomes invalid with this patch, is it expected behaviour?

```
template <char> struct Traits {
  using Type = Traits;
};
template <char... ArgType>
void bar(typename Traits<ArgType>::Type... args) {
  FillVRegs<ArgType...>(args...);
}
template <char... ArgType> void FillVRegs(typename Traits<ArgType>::Type...);
template <char FirstArgType, char SecondArgType>
void FillVRegs(typename Traits<FirstArgType>::Type,
               typename Traits<SecondArgType>::Type);
void foo() { bar<'A', 'A'>; }
```

https://github.com/llvm/llvm-project/pull/100692
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to