Вопросы по теме 'libtooling'

Получить информацию о классе из ObjCPropertyDecl
У меня возникли проблемы с извлечением информации о классе из типа clang ObjCPropertyDecl . Пример файла Objective-C: #import <Foundation/Foundation.h> @interface Test: NSObject @property (nonatomic, strong, nullable) NSObject *test;...
264 просмотров
schedule 16.11.2022

Исключение при запуске пользовательского инструмента Clang Frontend для некоторых входных файлов
Я написал собственный инструмент Clang Frontend по следующей ссылке. http://clang.llvm.org/docs/RAVFrontendAction.html Теперь я отдаю сам исходный код clang моему интерфейсному инструменту для статического анализа. Мой инструмент выдает...
59 просмотров

Clang использует LibTooling Rewriter для создания нового файла?
Я использую LibTooling для анализа. Я знаю, как пройтись по AST и куда-нибудь вставить текст. Например, Rewriter mywriter; mywriter.InsertTextAfter(func->getLocEnd(),"Hello"); Теперь мне интересно, есть ли способ сохранить код? (Погода...
2010 просмотров
schedule 10.09.2022

Как получить имена аргументов указателя функции с помощью clang LibTooling?
Скажем, я анализирую такой код: struct Foo { void(*setParam)(const char* name, int value); }; Я использую clang LibTooling и получаю FieldDecl на setParam . Я подумал, что могу получить такие типы аргументов: auto ft =...
573 просмотров
schedule 01.07.2023

Как получить все имена функций, в которых используются глобальные переменные?
Я работаю над libtooling с clang. Я разработал инструменты для поиска глобальных переменных и того, куда эти глобальные переменные ссылаются. Теперь я хочу получить имя функции, которая использует эти глобальные переменные. Вот пример кода...
520 просмотров
schedule 25.06.2022

Отладчик VS2017: не имеет адреса, возможно, из-за оптимизации компилятора
Кажется, не относится к некоторым вопросам с похожими заголовками. //some other code std::string s = Lookup->getName().str(); -> break here //some other code Примечание. «Поиск» — это clang::DirectoryLookup //some other code...
987 просмотров

Clang libtooling: как распечатать определения макросов компилятора
У меня есть утилита на основе LibTooling, и я хотел бы вывести список определений макросов для целей отладки. Можно распечатать определения макросов компилятора с помощью clang/gcc -dM -E - , но, похоже, это не сработает, если я передам -dM -E или...
122 просмотров
schedule 03.12.2022