// RUN: %clang_cc1 -fsanitize=bounds -emit-llvm -triple x86_64-apple-darwin10 < %s | FileCheck %s

// CHECK: @f
double f(int b, int i) {
  double a[b];
  // CHECK: trap
  return a[i];
}

// CHECK: @f2
void f2() {
  // everything is constant; no trap possible
  // CHECK-NOT: trap
  int a[2];
  a[1] = 42;
  
  short *b = malloc(64);
  b[5] = *a + a[1] + 2;
}

// CHECK: @f3
void f3() {
  int a[1];
  // CHECK: trap
  a[2] = 1;
}
