나는 모든 머리말 파일을 바꾸고 휴식하는 C++ 파일이있다 변하지 않게 남아있다. 그러나 번역 단위를 다시 파싱 할 때마다 libclang은 많은 CPU와 램을 소비하게됩니다. 그것은 미리 컴파일 된 헤더 및 모든 (나는 프리앰블 파일이 생성 된 볼 수 있지만) 여전히 꽤 많은 리소스뿐만 아니라 시간이 걸립니다.번역 단위의 libclang 느린 reparsing
다음은 내 코드 스 니펫입니다.
translation_unit_ = clang_parseTranslationUnit(index_, 0, clang_argv[0],
clang_argv.size() - 1, 0, 0,
clang_defaultEditingTranslationUnitOptions());
// File name is in the arguments.
// Here I reparse again every time file changes.
clang_reparseTranslationUnit(translation_unit_, 0, 0,
clang_defaultReparseOptions(translation_unit_));
// This is how I get diagnositics
CXDiagnostic diag = clang_getDiagnostic(translation_unit_, i);
누구나 내가 한 번의 변경 소스 파일에서 컴파일 오류를 찾기 위해 올바른 설정을 제안 할 수 있습니까?
간단히 컴파일 오류를 찾는 것이 목표입니까? 아니면 고품질의 최적화되고 최소화 된 코드 출력을 원하십니까? – sarnold
컴파일 오류 및 코드 완성을 찾으십시오! – abhanshu