1*673dc3d4SNico Weber // RUN: %clangxx_asan -O0 %s -o %t && %env_asan_opts=strict_memcmp=0 %run %t
2*673dc3d4SNico Weber // RUN: %clangxx_asan -O0 %s -o %t && %env_asan_opts=strict_memcmp=1 not %run %t 2>&1 | FileCheck %s
3*673dc3d4SNico Weber // Default to strict_memcmp=1.
4*673dc3d4SNico Weber // RUN: %clangxx_asan -O0 %s -o %t && not %run %t 2>&1 | FileCheck %s
5*673dc3d4SNico Weber 
6*673dc3d4SNico Weber #include <stdio.h>
7*673dc3d4SNico Weber #include <string.h>
main()8*673dc3d4SNico Weber int main() {
9*673dc3d4SNico Weber   char kFoo[] = "foo";
10*673dc3d4SNico Weber   char kFubar[] = "fubar";
11*673dc3d4SNico Weber   int res = memcmp(kFoo, kFubar, strlen(kFubar));
12*673dc3d4SNico Weber   printf("res: %d\n", res);
13*673dc3d4SNico Weber   // CHECK: AddressSanitizer: stack-buffer-overflow
14*673dc3d4SNico Weber   return 0;
15*673dc3d4SNico Weber }
16