1 // RUN: %clang_msan %s -o %t
2 // RUN: MSAN_OPTIONS=intercept_strcmp=false %run %t 2>&1
3 // RUN: MSAN_OPTIONS=intercept_strcmp=true not %run %t 2>&1 | FileCheck %s
4 // RUN:                                    not %run %t 2>&1 | FileCheck %s
5 
6 #include <assert.h>
7 #include <stdlib.h>
8 #include <string.h>
9 
main(int argc,char ** argv)10 int main(int argc, char **argv) {
11   char undef;
12   char s1[] = "abcd";
13   char s2[] = "1234";
14   assert(strcmp(s1, s2) > 0);
15   s2[0] = undef;
16   assert(strcmp(s1, s2));
17 
18   // CHECK: {{.*WARNING: MemorySanitizer: use-of-uninitialized-value}}
19   return 0;
20 }
21