rjmccall added a comment.

In D147655#4650964 <https://reviews.llvm.org/D147655#4650964>, @probinson wrote:

> Hi @rsmith,
>
>> these two different templates would have the same mangling:
>
>   template <typename T, T I> T returnit() {return I;};
>   template <typename T, int I> T returnit() { return I; }
>
> I tried compiling `long foo() { return returnit<long, 4>(); }` with these two 
> templates, and got different manglings. 
> `_Z8returnitIlLl4EET_v` and
> `_Z8returnitIlLi4EET_v`
>
> Am I misunderstanding something about the problem with the old mangling rules?

You need to do `returnit<int, 4>`.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D147655/new/

https://reviews.llvm.org/D147655

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to