1

すべてはタイトルにあると思います^^ 実は libtooling を使用してツールを開発していますが、すべてのエラーを抑制したいと考えています (ツールは正しいソースでのみ使用することを目的としているため、エラー出力は stderr. ..)。

4

2 に答える 2

4

タイトルは libclang/libtooling ですので、ここでは libclang に対する回答を示します。CXIndex次のように作成します。

bool excludeDeclarationsFromPCH = false;
bool displayDiagnostics = false;
CXIndex index = clang_createIndex((int)excludeDeclarationsFromPCH, (int)displayDiagnostics);

ドキュメントを参照してください。

于 2014-04-28T15:23:26.797 に答える
0

std::cerr出力をリダイレクトしますか? または、stderrすべての子プロセスに対して?後者の場合は、次のようなことができます。

#include <unistd.h>

int fd = dup(2);
int n = open("/dev/null", O_WRONLY);
dup2(n, 2);
close(n);

//... do your thing ...

dup2(fd, 2); // put the stderr back where it belongs :D
close(fd);
于 2014-04-28T14:47:19.097 に答える