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
diff --git a/test/Index/complete-driver-errors.c b/test/Index/complete-driver-errors.c
index 1918511..566090c 100644
--- a/test/Index/complete-driver-errors.c
+++ b/test/Index/complete-driver-errors.c
@@ -2,20 +2,21 @@
 
 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