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 Weberint 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