Mercurial > hg > CbC > CbC_llvm
view compiler-rt/test/scudo/double-free.cpp @ 266:00f31e85ec16 default tip
Added tag current for changeset 31d058e83c98
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 14 Oct 2023 10:13:55 +0900 |
parents | 2e18cbf3894f |
children |
line wrap: on
line source
// RUN: %clangxx_scudo %s -o %t // RUN: not %run %t malloc 2>&1 | FileCheck %s // RUN: not %run %t new 2>&1 | FileCheck %s // RUN: not %run %t newarray 2>&1 | FileCheck %s // Tests double-free error on pointers allocated with different allocation // functions. #include <assert.h> #include <stdlib.h> #include <string.h> int main(int argc, char **argv) { assert(argc == 2); if (!strcmp(argv[1], "malloc")) { void *p = malloc(sizeof(int)); assert(p); free(p); free(p); } if (!strcmp(argv[1], "new")) { int *p = new int; assert(p); delete p; delete p; } if (!strcmp(argv[1], "newarray")) { int *p = new int[8]; assert(p); delete[] p; delete[] p; } return 0; } // CHECK: ERROR: invalid chunk state