[libcxx-commits] [libcxx] [libc++] Externally instantiate std::vformat_to (PR #71009)
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Nov 2 10:07:22 PDT 2023
https://github.com/ldionne requested changes to this pull request.
The commit message here should explain what the changes are in more details:
1. We externally instantiate `std::vformat_to` for `string` and `wstring`.
2. We add a key function for `std::format_error`'s destructor inside the dylib but we keep providing an inline destructor when the deployment target is older. This leads to a weak vtable being generated so we don't introduce a deployment-target dependency.
I also want to note that this is actually a really neat approach. We could have used this for `std::bad_optional_access` & friends in the past to provide `std::optional` on older deployment targets. We should probably consider using this technique whenever introducing a new exception type going forward.
https://github.com/llvm/llvm-project/pull/71009
More information about the libcxx-commits
mailing list