diff options
author | Maxim Ostapenko <chefmax7@gmail.com> | 2018-01-22 09:30:27 +0000 |
---|---|---|
committer | Maxim Ostapenko <chefmax7@gmail.com> | 2018-01-22 09:30:27 +0000 |
commit | eed59a7be2e79f30d91d9353859493ef8107b429 (patch) | |
tree | 11fc33defda2a5d0c0e78f56f32d915de98b16fa /test/lsan | |
parent | 2bcda34aa2ffdc53cf7521e41b37b78a77a5ea02 (diff) |
[lsan] Respect log_path option in standalone LSan
Differential Revision: https://reviews.llvm.org/D42303
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323083 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/lsan')
-rw-r--r-- | test/lsan/TestCases/Linux/log-path_test.cc | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/test/lsan/TestCases/Linux/log-path_test.cc b/test/lsan/TestCases/Linux/log-path_test.cc new file mode 100644 index 000000000..a31b4f64a --- /dev/null +++ b/test/lsan/TestCases/Linux/log-path_test.cc @@ -0,0 +1,26 @@ +// RUN: %clangxx_lsan %s -o %t +// The globs below do not work in the lit shell. + +// Regular run. +// RUN: %env_lsan_opts="use_stacks=0" not %run %t > %t.out 2>&1 +// RUN: FileCheck %s --check-prefix=CHECK-ERROR < %t.out + +// Good log_path. +// RUN: rm -f %t.log.* +// RUN: %env_lsan_opts="use_stacks=0:log_path='"%t.log"'" not %run %t > %t.out 2>&1 +// RUN: FileCheck %s --check-prefix=CHECK-ERROR < %t.log.* + +#include <stdio.h> +#include <stdlib.h> +#include "sanitizer_common/print_address.h" + +int main() { + void *stack_var = malloc(1337); + print_address("Test alloc: ", 1, stack_var); + // Do not return from main to prevent the pointer from going out of scope. + exit(0); +} + +// CHECK-ERROR: LeakSanitizer: detected memory leaks +// CHECK-ERROR: Direct leak of 1337 byte(s) in 1 object(s) allocated from +// CHECK-ERROR: SUMMARY: {{(Leak|Address)}}Sanitizer: |