diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-12-01 02:42:50 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-12-01 02:42:50 +0000 |
commit | 996e6e564af7483e2d5e0b70df5fdb9f79ec4b5a (patch) | |
tree | a0602e3d756ca406211e375f4b4c97ad3d9c5677 /tools/c-index-test/c-index-test.c | |
parent | 185dbd7782a45d0f830218bfbc196c6b664ed8d9 (diff) |
[libclang] Create a diagnostic set to pass at the end of indexing.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145557 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/c-index-test/c-index-test.c')
-rw-r--r-- | tools/c-index-test/c-index-test.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/tools/c-index-test/c-index-test.c b/tools/c-index-test/c-index-test.c index 472c0b0e95..903bfc59d8 100644 --- a/tools/c-index-test/c-index-test.c +++ b/tools/c-index-test/c-index-test.c @@ -1702,21 +1702,27 @@ static void printProtocolList(const CXIdxObjCProtocolRefListInfo *ProtoInfo, } static void index_diagnostic(CXClientData client_data, - CXDiagnostic diag, void *reserved) { + CXDiagnosticSet diagSet, void *reserved) { CXString str; const char *cstr; + unsigned numDiags, i; + CXDiagnostic diag; IndexData *index_data; index_data = (IndexData *)client_data; printCheck(index_data); - str = clang_formatDiagnostic(diag, clang_defaultDiagnosticDisplayOptions()); - cstr = clang_getCString(str); - printf("[diagnostic]: %s\n", cstr); - clang_disposeString(str); - - if (getenv("CINDEXTEST_FAILONERROR") && - clang_getDiagnosticSeverity(diag) >= CXDiagnostic_Error) { - index_data->fail_for_error = 1; + numDiags = clang_getNumDiagnosticsInSet(diagSet); + for (i = 0; i != numDiags; ++i) { + diag = clang_getDiagnosticInSet(diagSet, i); + str = clang_formatDiagnostic(diag, clang_defaultDiagnosticDisplayOptions()); + cstr = clang_getCString(str); + printf("[diagnostic]: %s\n", cstr); + clang_disposeString(str); + + if (getenv("CINDEXTEST_FAILONERROR") && + clang_getDiagnosticSeverity(diag) >= CXDiagnostic_Error) { + index_data->fail_for_error = 1; + } } } |