From e74e8222ee644b91e5b888b6fd7410f65517b940 Mon Sep 17 00:00:00 2001 From: Argyrios Kyrtzidis Date: Sun, 13 Nov 2011 22:08:33 +0000 Subject: [PATCH] [libclang] for c-index-test, check for CINDEXTEST_FAILONERROR when doing -test-load-source-reparse llvm-svn: 144509 --- clang/tools/c-index-test/c-index-test.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/clang/tools/c-index-test/c-index-test.c b/clang/tools/c-index-test/c-index-test.c index ac2ab4fdd97c..8ab7f9410d90 100644 --- a/clang/tools/c-index-test/c-index-test.c +++ b/clang/tools/c-index-test/c-index-test.c @@ -45,6 +45,8 @@ static unsigned getDefaultParsingOptions() { return options; } +static int checkForErrors(CXTranslationUnit TU); + static void PrintExtent(FILE *out, unsigned begin_line, unsigned begin_column, unsigned end_line, unsigned end_column) { fprintf(out, "[%d:%d - %d:%d]", begin_line, begin_column, @@ -802,6 +804,9 @@ int perform_test_reparse_source(int argc, const char **argv, int trials, return 1; } + if (checkForErrors(TU) != 0) + return -1; + if (getenv("CINDEXTEST_REMAP_AFTER_TRIAL")) { remap_after_trial = strtol(getenv("CINDEXTEST_REMAP_AFTER_TRIAL"), &endptr, 10); @@ -818,9 +823,16 @@ int perform_test_reparse_source(int argc, const char **argv, int trials, clang_disposeIndex(Idx); return -1; } + + if (checkForErrors(TU) != 0) + return -1; } result = perform_test_load(Idx, TU, filter, NULL, Visitor, PV); + + if (checkForErrors(TU) != 0) + return -1; + free_remapped_files(unsaved_files, num_unsaved_files); clang_disposeIndex(Idx); return result;