[libcxx-commits] [PATCH] D122864: [libc++] Avoid lifetime UB in __thread_local_data()

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Apr 13 11:03:08 PDT 2022

ldionne added a comment.

In D122864#3443536 <https://reviews.llvm.org/D122864#3443536>, @vitalybuka wrote:

> In D122864#3442952 <https://reviews.llvm.org/D122864#3442952>, @ldionne wrote:
>> Thanks for the patch! I'm not sure I understand how we'd catch this though, since D122869 <https://reviews.llvm.org/D122869> doesn't touch any libc++ tests. Is there something we can do to fix our test setup in libc++ so as to catch this issue in our own tests?
> I am not sure as well. Do we have bot which runs libc++ tests with sanitizers?
> My team runs some clang/llvm tests with msan and instrumented libc++, but no libc++ tests.

Yes, we run Asan, Tsan, Msan and UBsan on each patch in our pre-commit ci: https://buildkite.com/llvm-project/libcxx-ci/builds/10156. It looks like the patch as-is is failing under Msan, too.

To detect this, perhaps we're just missing `-fsanitize-memory-use-after-dtor` in our test setup? Is it enabled by default?

  rG LLVM Github Monorepo



More information about the libcxx-commits mailing list