[PATCH] D147655: Implement mangling rules for C++20 concepts and requires-expressions.

Richard Smith - zygoloid via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 22 17:41:36 PDT 2023


rsmith added a comment.

In D147655#4649864 <https://reviews.llvm.org/D147655#4649864>, @dyung wrote:

> Hi @rsmith, we have an internal test where your change seems to have changed the mangling in C++17 mode and wanted to check if that was intentional.

[...]

> Are these changes in non-C++20 mode intentional?

Yes, they're intentional. Unfortunately we could have mangling collisions here when using the old ABI rule; 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; }

But... it looks like this case is missing from the list of affected cases in the change description and the release notes. Sorry about that. Release notes updated in rGaaa79a59317f859485d701d1eb68ac4cb213e1d1 <https://reviews.llvm.org/rGaaa79a59317f859485d701d1eb68ac4cb213e1d1>.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D147655



More information about the cfe-commits mailing list