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

Получить информацию о директивах препроцессора
Недавно я начал использовать libclang для анализа файлов C. Проблема, с которой я сталкиваюсь, заключается в том, что, по-видимому, libclang инициирует препроцессор перед созданием AST. Я хотел бы запретить запуск препроцессора и вместо этого...
3956 просмотров
schedule 19.08.2023

Есть ли в LLVM какие-либо интерфейсы для компиляции встроенной функции во внутреннее представление?
Я разрабатываю что-то на основе llvm и хочу выполнять JIT при запуске кода, в коде JIT я использую некоторую функцию в коде, который не JIT (код программы, которая генерирует JIT-код). но я обнаружил, что это дорого, требует много времени при запуске...
122 просмотров

Включает в заголовки libclang
Я просматривал заголовки libclang здесь ( http://llvm.org/svn/llvm-project/cfe/trunk/include/clang-c/ ), где я заметил, что почти все заголовки имеют импорт, как в #include "clang-c/Platform.h" // in CXString.h // in Index.h #include...
1165 просмотров
schedule 01.12.2022

Получить тип оператора для CXCursor_BinaryOperator
Я пытаюсь найти задание в исходном файле С++: x = 10; Я использую libclang для анализа и прохождения AST. Существует CXCursor_BinaryOperator , который представляет бинарные операторы. Есть ли способ определить, является ли это...
960 просмотров
schedule 21.08.2022

Своевременная компиляция с использованием libclang и LLVM C
У меня есть программное обеспечение, способное генерировать код C, который я хотел бы использовать в контексте компиляции точно в срок. Насколько я понимаю, LLVM/Clang — это то, что нужно, и для удобства сопровождения проекта я хотел бы использовать...
839 просмотров
schedule 01.02.2023

Предварительная обработка исходных файлов Clang Tooling
Я использую библиотеку Clang::Tooling для анализа некоторых файлов заголовков. Кажется, я не могу правильно разобрать из-за того, что clang не выполняет предварительную обработку файлов заголовков и других материалов препроцессора. Как я могу...
444 просмотров
schedule 10.08.2022

Как собрать libclang версии 6.0
Я пытаюсь собрать libclang для последней версии 6.0. Насколько я понимаю, мне нужно клонировать репозиторий llvm, а затем клонировать репозиторий clang в каталоге tools/clang , запустить команду cmake, а затем собрать libclang с make liblcang...
357 просмотров
schedule 08.03.2024

Создайте оптимизированный AST, используя clang и libclang
Я хочу применить оптимизацию clang к исходному файлу, а затем сгенерировать его AST. Я пытался передать флаг -O3 , но кажется, что он игнорируется. Например, я предполагаю, что для этого фрагмента программы: #include <stdio.h> int...
250 просмотров
schedule 11.07.2023

Получение подписи FunctionDecl
Я получил FunctionDecl для определения функции. Для этой функции нет объявления. Например: int foo(char c, double d) { ... } Как получить подпись (квалификатор, тип возвращаемого значения, имя функции, параметры) в качестве...
993 просмотров
schedule 25.08.2022

Разбор исходного файла с помощью libclang — проблемы со связыванием включаемых файлов
Я написал скрипт для анализа файлов C/C++ с использованием библиотеки libclang . Файл, который я пытался разобрать: osf_sys.c . Программа печатает каждую функцию/переменную и т.д. в файле. Пример вывода: ... CURSORKIND: 6; __user at line:...
861 просмотров
schedule 05.09.2022

Почему clang_getEnumDeclIntegerType libclang возвращает разные результаты в Linux и Windows?
Рассмотрим этот простой файл C, file.c : enum X { A, B } Давайте определим базовый тип перечисления, используя libclang : #include <stdio.h> #include <clang-c/Index.h> enum CXChildVisitResult visitor(CXCursor...
99 просмотров
schedule 05.07.2023

Как использовать compile_commands.json с привязками python llvm clang (версия 7.0.1)?
Я пытаюсь распечатать все узлы AST в данном файле C ++. И я предоставляю действительный файл C ++, в родительском каталоге которого есть файл compile_commands.json. Все шаги такие же, как Как использовать compile_commands .json с привязками clang...
673 просмотров
schedule 21.03.2022