26 lines · cpp
1// Check that without suppressions, we catch the issue.2// RUN: %clangxx_asan -O0 %s -o %t3// RUN: not %run %t 2>&1 | FileCheck --check-prefix=CHECK-CRASH %s4 5// RUN: echo "interceptor_name:strlen" > %t.supp6// RUN: %env_asan_opts=suppressions='"%t.supp"' %run %t 2>&1 | FileCheck --check-prefix=CHECK-IGNORE %s7 8// FIXME: Upload suppressions to device.9// XFAIL: android10 11#include <stdio.h>12#include <stdlib.h>13#include <string.h>14 15int main() {16 char *a = (char *)malloc(6);17 free(a);18 size_t len = strlen(a); // BOOM19 fprintf(stderr, "strlen ignored, len = %zu\n", len);20}21 22// CHECK-CRASH: AddressSanitizer: heap-use-after-free23// CHECK-CRASH-NOT: strlen ignored24// CHECK-IGNORE-NOT: AddressSanitizer: heap-use-after-free25// CHECK-IGNORE: strlen ignored26