[serialized diagnostics]: add test cases for serialized diagnostics, including a test case for no issues, multiple issues, and
a single issue. Along the way, tweak c-index-test -read-diagnostics output so it is easier to tell what diagnostics are
child diagnostics.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144349 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/c-index-test/c-index-test.c b/tools/c-index-test/c-index-test.c
index eb99239..0860f18 100644
--- a/tools/c-index-test/c-index-test.c
+++ b/tools/c-index-test/c-index-test.c
@@ -2307,8 +2307,12 @@
}
static void printIndent(unsigned indent) {
+ if (indent == 0)
+ return;
+ fprintf(stderr, "+");
+ --indent;
while (indent > 0) {
- fprintf(stderr, " ");
+ fprintf(stderr, "-");
--indent;
}
}
@@ -2366,8 +2370,6 @@
if (!Diags)
return;
- fprintf(stderr, "\n");
-
n = clang_getNumDiagnosticsInSet(Diags);
for (i = 0; i < n; ++i) {
CXSourceLocation DiagLoc;
@@ -2427,6 +2429,8 @@
}
printDiagnosticSet(Diags, 0);
+ fprintf(stderr, "Number of diagnostics: %d\n",
+ clang_getNumDiagnosticsInSet(Diags));
clang_disposeDiagnosticSet(Diags);
return 0;
}