Вопросы по теме 'libtooling'
CXXRecords getNameAsString, как получить полное имя?
namespace A {
namespace B {
class C {
class D {
};
};
}
}
CXXRecords для D с getNameAsString вернет D . Как я могу получить полное имя ::A::B::C::D ?
Я попытался рекурсивно...
560 просмотров
schedule
13.07.2022
Почему clang создает эти неявные методы, когда класс содержит виртуальный метод?
Я работаю над инструментом, основанным на AST clang, и мне любопытно узнать, почему clang работает таким образом.
Вот мой вклад. У меня есть очень простой класс, который определяется следующим образом:
class Foo {
int foo();
};
Затем...
220 просмотров
schedule
18.04.2023
Как я могу использовать LibTooling/Clang в Visual Studio?
Я пытаюсь использовать LibTooling для замены имен функций и переменных в файлах C-кода. Поэтому я скачал llvm и, следуя инструкциям, установил его в Windows с помощью GMake и Visual Studio 2015.
Существует множество руководств (например, этот ),...
2246 просмотров
schedule
07.06.2023
Получите полное имя аргумента шаблона шаблона с помощью libtooling
Я пытаюсь использовать libtooling для печати CXXRecordDecl обоснования класса шаблона с параметром шаблона шаблона. К сожалению, строковое представление параметра шаблона шаблона не является полным (например, отсутствуют пространства имен).
Я...
1221 просмотров
schedule
14.07.2023
clang: пользовательские атрибуты не отображаются в AST
я реализовал пользовательский атрибут в clang, как описано в официальном руководстве: http://clang.llvm.org/docs/InternalsManual.html#how-to-add-an-attribute
Поэтому я добавил следующий код в Attr.td:
def MyAttr: InheritableAttr {
let...
2399 просмотров
schedule
28.06.2022
Как запустить LibTool?
В настоящее время я тестировал свой инструмент с clang-llvm, установленным на машине, на которой я его разрабатываю. Все, что мне нужно сделать, это войти в build/bin , чтобы запустить мой инструмент.
Однако теперь я хочу попробовать запустить...
208 просмотров
schedule
09.09.2022
Получение подписи FunctionDecl
Я получил FunctionDecl для определения функции. Для этой функции нет объявления.
Например:
int foo(char c, double d)
{
...
}
Как получить подпись (квалификатор, тип возвращаемого значения, имя функции, параметры) в качестве...
993 просмотров
schedule
25.08.2022
инструмент clang: включить путь
Я хотел бы изменить путь включения моего инструмента clang в соответствии с вводом. Когда я запускаю приведенный ниже код в образце тестового файла, у меня возникает ошибка компиляции «заголовок не найден».
#include...
741 просмотров
schedule
08.08.2022
Clang: как получить имя макроса, используемое для размера объявления массива постоянного размера
TL;DR;
Как получить имя макроса, используемое для размера объявления массива постоянного размера, из callExpr -> arg_0 -> DeclRefExpr.
Подробное описание проблемы:
Недавно я начал работать над задачей, которая требует инструмента...
723 просмотров
schedule
05.01.2023
Можно ли как-то найти расположение всех макросов?
Я хочу найти все места расширения макроса, чтобы заменить определение макроса.
Я не знаю, какой API я могу использовать для получения местоположения расширения макроса.
#include <stdio.h>
#define NUM 5
int main(void)
{
int i;
int j =...
36 просмотров
schedule
25.01.2023
Включить только синтаксический анализ в clang
Я пытаюсь реализовать инструмент clang, который выполняет синтаксический анализ с использованием ASTMatcher API. Я пытаюсь выяснить, как указать дополнительные флаги для clang, чтобы отключить семантические проверки. Я знаю, что clang создает...
119 просмотров
schedule
14.04.2024