summaryrefslogtreecommitdiff
path: root/test/esan/TestCases/libc-intercept.c
blob: 8d8d81f0bd03fef1a8a05a4e55ff966572906e7d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// RUN: %clang_esan_frag -O0 %s -o %t 2>&1
// RUN: %env_esan_opts=verbosity=3 %run %t 2>&1 | FileCheck %s

#include <string.h>

int main(int argc, char **argv) {
  char Buf[2048];
  const char Str[] = "TestStringOfParticularLength"; // 29 chars.
  strcpy(Buf, Str);
  strncpy(Buf, Str, 17);
  return strncmp(Buf, Str, 17);
  // CHECK:      in esan::initializeLibrary
  // CHECK:      in esan::processRangeAccess {{.*}} 29
  // CHECK:      in esan::processRangeAccess {{.*}} 29
  // CHECK:      in esan::processRangeAccess {{.*}} 17
  // CHECK:      in esan::processRangeAccess {{.*}} 17
  // CHECK:      in esan::processRangeAccess {{.*}} 17
  // CHECK:      in esan::processRangeAccess {{.*}} 17
  // CHECK:      in esan::finalizeLibrary
}