summaryrefslogtreecommitdiffstats
path: root/clang/tools/CIndex/CIndex.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-11-10 19:18:52 +0000
committerTed Kremenek <kremenek@apple.com>2009-11-10 19:18:52 +0000
commitba64574c9a38308dd704c63659b984394a4db67c (patch)
tree98a9e7ffe17bf23c2026aa0f8a3080f62a5a444b /clang/tools/CIndex/CIndex.cpp
parentb47222144be416963dc342111a0c3eb43ca37a90 (diff)
downloadbcm5719-llvm-ba64574c9a38308dd704c63659b984394a4db67c.tar.gz
bcm5719-llvm-ba64574c9a38308dd704c63659b984394a4db67c.zip
CIndex: Only display diagnostics to llvm::errs() when the client has set the 'displayDiagnostics' option to 1 in clang_createIndex(). This fixes <rdar://problem/7370691>.
llvm-svn: 86700
Diffstat (limited to 'clang/tools/CIndex/CIndex.cpp')
-rw-r--r--clang/tools/CIndex/CIndex.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/tools/CIndex/CIndex.cpp b/clang/tools/CIndex/CIndex.cpp
index c98d14264ad..da73ae40a39 100644
--- a/clang/tools/CIndex/CIndex.cpp
+++ b/clang/tools/CIndex/CIndex.cpp
@@ -464,7 +464,7 @@ CXTranslationUnit clang_createTranslationUnit(
CXXIdx->getOnlyLocalDecls(),
/* UseBumpAllocator = */ true);
- if (!ErrMsg.empty())
+ if (CXXIdx->getDisplayDiagnostics() && !ErrMsg.empty())
llvm::errs() << "clang_createTranslationUnit: " << ErrMsg << '\n';
return TU;
@@ -527,7 +527,7 @@ CXTranslationUnit clang_createTranslationUnitFromSourceFile(
/* redirects */ !CXXIdx->getDisplayDiagnostics() ? &Redirects[0] : NULL,
/* secondsToWait */ 0, /* memoryLimits */ 0, &ErrMsg);
- if (!ErrMsg.empty()) {
+ if (CXXIdx->getDisplayDiagnostics() && !ErrMsg.empty()) {
llvm::errs() << "clang_createTranslationUnitFromSourceFile: " << ErrMsg
<< '\n' << "Arguments: \n";
for (std::vector<const char*>::iterator I = argv.begin(), E = argv.end();
@@ -1238,7 +1238,7 @@ void clang_codeComplete(CXIndex CIdx,
/* secondsToWait */ 0,
/* memoryLimits */ 0, &ErrMsg);
- if (!ErrMsg.empty()) {
+ if (CXXIdx->getDisplayDiagnostics() && !ErrMsg.empty()) {
llvm::errs() << "clang_codeComplete: " << ErrMsg
<< '\n' << "Arguments: \n";
for (std::vector<const char*>::iterator I = argv.begin(), E = argv.end();
OpenPOWER on IntegriCloud