Make the ASAN RAII object a nop when building w/o ASAN
llvm-svn: 217082
Cr-Mirrored-From: sso://chromium.googlesource.com/_direct/external/github.com/llvm/llvm-project
Cr-Mirrored-Commit: b67bc4ea0d23c2dc11d2123aaf37d1b3ef83c940
diff --git a/include/vector b/include/vector
index 12195df..cd9aab3 100644
--- a/include/vector
+++ b/include/vector
@@ -863,6 +863,7 @@
__annotate_contiguous_container(data(), data() + capacity(),
data() + __old_size, data() + size());
}
+#ifndef _LIBCPP_HAS_NO_ASAN
// The annotation for size increase should happen before the actual increase,
// but if an exception is thrown after that the annotation has to be undone.
struct __RAII_IncreaseAnnotator {
@@ -879,6 +880,13 @@
size_type __n;
const vector &__v;
};
+#else
+ struct __RAII_IncreaseAnnotator {
+ inline __RAII_IncreaseAnnotator(const vector &, size_type __n = 1) {}
+ inline void __done() {}
+ };
+#endif
+
};
template <class _Tp, class _Allocator>