libtooling

    0

    1답변

    CXXMethodDecl이 override 또는 final 키워드로 지정되어 있는지 확인하는 "clang 방식"이 있습니까? 나는 CXXMethodDecl을 나타내는 문자열에 대해 std::string::find(" override")으로 확인할 수 있지만이 방법은 약간보기 흉하게 보입니다.

    6

    1답변

    tldr>> 어떻게 시스템 헤더에서 경고를 숨길 수 있습니까? 나는 시스템 헤더에 그 소리-깔끔한 경고를 트리거 다음과 같은 최소한의 예제 소스 파일이 있습니다 #include <future> int main() { std::promise<int> p; p.set_value(3); } 우분투 17.04에 그 소리-깔끔한 4.0.0

    0

    1답변

    API를 찾지 못했지만 본질적으로 다음을 원합니다. 모든 Visit * 메소드를 수행 한 후에 데이터 멤버에서 일부 후행 처리를 수행하는 최종 메소드를 호출합니다. 나는 그것이 첫 번째 방문 메소드가되는 대신에 마지막 일 것임을 제외하고 TranslationUnitDecl을 방문하는 것과 비슷한 것으로 가정합니다.

    0

    1답변

    clang의 libtooling을 사용하여 일부 코드를 수정하고 있으며 C 도구에서 내 도구를 사용할 때마다 안전하게 헤더를 삽입 할 수있는 방법을 찾으려고합니다. 전 처리기에 대한 호출이 일치하는지에 대해 What's the right way to match #includes (or #defines) using Clang's libtooling? 번 읽었

    2

    2답변

    저는 LibTooling을 사용하여 분석을하고 있습니다. 나는 AST를 횡단하고 어딘가에 어떤 텍스트를 삽입하는 법을 안다. 예 : 이제 코드를 저장할 방법이 있는지 궁금합니다. (날씨는 원본 파일에 저장하거나 새 파일을 생성합니다.) 분석 후에는 터미널에서만 결과를 읽을 수 있기 때문에 충분하지 않습니다.

    1

    1답변

    Clang libTooling 개발을 처음 접했습니다. 내가 "I", "J"와 "K"를 포함하여 전체 선언 식을 캡처하려면, 내 프로젝트의 요구 사항은 다음 변수 선언 int i, j, k = 10; ^ ^ 을 고려하십시오. clang libTooling을 사용하여 모든 변수를 포함하여 완전한 선언 식을 캡처하는 방법은 무엇입니까? 내가 겪고있는

    1

    1답변

    나는 clang 툴을 사용하고 있으며 명시 적으로 지정되지 않은 타입을 가진 소스 코드를 생성해야합니다. 형식이 clang::QualType 인 문자열은 class std::initializer_list<int>과 같습니다. 문제는 키워드없이 유형을 얻는 것입니다. 나는 유형 (clang::Type)의 모든 상속인에게 을 시도했지만 결과는 항상 null입니

    1

    2답변

    clang::FileID 또는 clang::FileEntry 등으로 파일에있는 #include마다 clang::SourceLocation을 얻을 수있는 방법이 있습니까?

    0

    1답변

    다음 링크에 따라 사용자 정의 clang 프론트 엔드 도구를 작성했습니다. http://clang.llvm.org/docs/RAVFrontendAction.html 정적 분석을 위해 프런트 엔드 도구에 clang 소스 코드를 제공하고 있습니다. 내 도구가이 테스트 케이스에 대한 예외를 던지고 있습니다. https://llvm.org/svn/llvm-proj

    2

    1답변

    나는 MatchFinder과 같이 정의했다 : MatchFinder Finder; Finder.addMatcher(FunctionCallMatcher, &printer); 그리고 DeclarationMatcher 및 MatchCallback은 다음과 같습니다 : 내 주요 코드에서 DeclarationMatcher FunctionCallMatcher =