[libcxx-commits] [libcxx] Fix __split_buffer_pointer_layout compatibility with swift's C++ interop (PR #170957)
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Dec 10 09:06:23 PST 2025
ldionne wrote:
The issue I see with landing this patch as-is is that it creates a precedent for trying to support something that we don't officially support right now. Whether this constructor can be instantiated or not shouldn't be an observable property of the library. It only ends up being observable because the Swift compiler is asking Clang to instantiate a function that would normally never be instantiated, which is not something we can realistically support. Hence, it doesn't make sense to even start adding band-aid fixes in libc++ to fix these kinds of issues, instead I'd rather fix the underlying issue.
That being said, I do agree that we should unblock this issue, so I've opened #171651 which I believe should also fix this problem. #171651 is a pure refactoring that simplifies our code, so it doesn't introduce a precedent for something we don't want to and can't support in the general case.
I've also spoken to @egorzhdan who manages the Swift interop effort and he's told me they would look into the best way of fixing this general problem going forward. But obviously there's a longer time line for that.
https://github.com/llvm/llvm-project/pull/170957
More information about the libcxx-commits
mailing list