[PATCH] D12299: [libcxx] ABI-Breaking Fix for ALL undefined behavior in <list>.
Eric Fiselier via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 27 20:09:22 PDT 2015
EricWF added a comment.
I've spent some time testing this patch to see if it causes ABI problem. Here is what I did:
1. Add external instantiations of std::list into the libc++ dylib for the types used in the tests.
2. Compile `libcxx-old.dylib` with the external instantations but without this patch.
3. Apply this patch and compile `libcxx-new.dylib`.
4. For each test, `T`, in `std/containers/sequences/list` do the following:
1. Compile and link `T` against the patched headers and `libcxx-new.dylib`. Run `T` using `libcxx-old.dylib`.
2. Compile and link `T` against `the original headers and `libcxx-old.dylib`. Run `T` using `libcxx-new.dylib`.
I didn't see any issues arise when doing this but that doesn't mean there are none. I'm going to ensure this method actually would catch
a ABI breakage so I can have some more faith in the results.
http://reviews.llvm.org/D12299
More information about the cfe-commits
mailing list