diff options
author | Douglas Gregor <dgregor@apple.com> | 2010-11-11 00:39:14 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2010-11-11 00:39:14 +0000 |
commit | e47be3e9682e82da15059006f43c7f3c021e4fff (patch) | |
tree | 949de514619f85922014fd05a870d393849d9534 /test/Index/complete-driver-errors.c | |
parent | e27e9d673346056e6ff7dca1d7fb1d75dfd42956 (diff) |
Improve ASTUnit's capture of diagnostics so that the
diagnostic-capturing client lives as long as the ASTUnit itself
does. Otherwise, we can end up with crashes when we get a diagnostic
outside of parsing/code completion. The circumstances under which this
happen are really hard to reproduce, because a file needs to change
from under us.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118751 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Index/complete-driver-errors.c')
-rw-r--r-- | test/Index/complete-driver-errors.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/test/Index/complete-driver-errors.c b/test/Index/complete-driver-errors.c index 1918511a18..566090c260 100644 --- a/test/Index/complete-driver-errors.c +++ b/test/Index/complete-driver-errors.c @@ -2,20 +2,21 @@ int *blah = 1; int -// Test driver errors with code completion -// RUN: c-index-test -code-completion-at=%s:4:1 -std= %s 2> %t | FileCheck -check-prefix=CHECK-RESULTS %s -// RUN: FileCheck -check-prefix=CHECK-DIAGS %s < %t // CHECK-RESULTS: NotImplemented:{TypedText const} (40) // CHECK-RESULTS: NotImplemented:{TypedText restrict} (40) // CHECK-RESULTS: NotImplemented:{TypedText volatile} (40) +// CHECK-DIAGS: error: invalid value '' in '-std=' +// CHECK-DIAGS: complete-driver-errors.c:1:6:{1:13-1:14}: warning: incompatible integer to pointer conversion initializing 'int *' with an expression of type 'int' + +// Test driver errors with code completion +// RUN: c-index-test -code-completion-at=%s:4:1 -std= %s 2> %t | FileCheck -check-prefix=CHECK-RESULTS %s +// RUN: FileCheck -check-prefix=CHECK-DIAGS %s < %t // Test driver errors with parsing // RUN: c-index-test -test-load-source all -std= %s 2> %t | FileCheck -check-prefix=CHECK-LOAD %s // RUN: FileCheck -check-prefix=CHECK-DIAGS %s < %t // CHECK-LOAD: complete-driver-errors.c:1:6: VarDecl=blah:1:6 -// CHECK-DIAGS: error: invalid value '' in '-std=' -// CHECK-DIAGS: complete-driver-errors.c:1:6:{1:13-1:14}: warning: incompatible integer to pointer conversion initializing 'int *' with an expression of type 'int' // Test driver errors with code completion and precompiled preamble // RUN: env CINDEXTEST_EDITING=1 c-index-test -code-completion-at=%s:4:1 -std= %s 2> %t | FileCheck -check-prefix=CHECK-RESULTS %s // RUN: FileCheck -check-prefix=CHECK-DIAGS %s < %t |