// RUN: %clang-cc1 -fsyntax-only %s 2>&1 | FileCheck %s

// IMPORTANT: This test case intentionally DOES NOT use --disable-free.  It
// tests that we are properly reclaiming the ASTs and we do not have a double free.
// Previously we tried to free the size expression of the VLA twice.

int foo(int x) {
  int y[x * 3];
  help
};

// CHECK: 9:3: error: use of undeclared identifier 'help'
// CHECK:  help
// CHECK: 14:102: error: expected '}'

// RUN: c-index-test -test-load-source local %s 2>&1 | FileCheck %s

// This is invalid source.  Previously a double-free caused this
// example to crash c-index-test.

int foo(int x) {
  int y[x * 3];
  help
};

// CHECK: 8:3: error: use of undeclared identifier 'help'
// CHECK:  help
// CHECK: 12:102: error: expected '}'

--- 
+++ 
@@ -1,13 +1,14 @@
-// RUN: c-index-test -test-load-source local %s 2>&1 | FileCheck %s
+// RUN: %clang-cc1 -fsyntax-only %s 2>&1 | FileCheck %s
 
-// This is invalid source.  Previously a double-free caused this
-// example to crash c-index-test.
+// IMPORTANT: This test case intentionally DOES NOT use --disable-free.  It
+// tests that we are properly reclaiming the ASTs and we do not have a double free.
+// Previously we tried to free the size expression of the VLA twice.
 
 int foo(int x) {
   int y[x * 3];
   help
 };
 
-// CHECK: 8:3: error: use of undeclared identifier 'help'
+// CHECK: 9:3: error: use of undeclared identifier 'help'
 // CHECK:  help
-// CHECK: 12:102: error: expected '}'
+// CHECK: 14:102: error: expected '}'
Change test case to use 'clang -cc1' (without --disable-free) instead of c-index-test (whose memory management behavior may change in the future).


git-svn-id: ffe668792ed300d6c2daa1f6eba2e0aa28d7ec6c@92043 91177308-0d34-0410-b5e6-96231b3b80d8
