CXDiagnostic clang_getDiagnostic(CXTranslationUnit Unit, unsigned Index) { CXDiagnosticSet D = clang_getDiagnosticSetFromTU(Unit); if (!D) return 0; CXDiagnosticSetImpl *Diags = static_cast<CXDiagnosticSetImpl*>(D); if (Index >= Diags->getNumDiagnostics()) return 0; return Diags->getDiagnostic(Index); }
CXDiagnostic clang_getDiagnostic(CXTranslationUnit Unit, unsigned Index) { if (cxtu::isNotUsableTU(Unit)) { LOG_BAD_TU(Unit); return nullptr; } CXDiagnosticSet D = clang_getDiagnosticSetFromTU(Unit); if (!D) return nullptr; CXDiagnosticSetImpl *Diags = static_cast<CXDiagnosticSetImpl*>(D); if (Index >= Diags->getNumDiagnostics()) return nullptr; return Diags->getDiagnostic(Index); }