[libcxx-commits] [PATCH] D132769: [2b/3][ASan][libcxx] std::basic_string annotations

Tacet via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Feb 16 12:10:07 PST 2023


AdvenamTacet updated this revision to Diff 498117.
AdvenamTacet marked 3 inline comments as not done.
AdvenamTacet added a comment.

This update should fix problems with short string annotations.

- It adds `_LIBCPP_STRING_INTERNAL_MEMORY_ACCESS` in relevant places.
- It adds a check for an allocator* in `__annotate_short_string_check`.
- It turns off string external templates, when compiled with ASan.

*Objects annotation cannot be supported with non-standard allocators, because some access memory inside the object.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D132769

Files:
  libcxx/include/__string/extern_template_lists.h
  libcxx/include/string
  libcxx/test/std/strings/basic.string/string.asan/append.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/assign.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/capacity.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/concatenate.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/constructor.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/erase.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/insert.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/nostd_allocator.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/packed.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/push_pop_back.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/replace.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/substr.pass.cpp
  libcxx/test/std/strings/basic.string/string.asan/swap.pass.cpp
  libcxx/test/support/asan_testing.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D132769.498117.patch
Type: text/x-patch
Size: 134016 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20230216/150e31cb/attachment-0001.bin>


More information about the libcxx-commits mailing list