Как проверить операнд pointer to pointer
введите LLVM
? Мы можем проверить, является ли указатель операнда указателем или нет, но как проверить, указывает ли он на указатель? я использую Clang
генерировать промежуточный код и используя C++
для исходного файла.
Вы можете вызвать Type::getContainedType(int)
получить доступ к типу pointee. Так должно выглядеть так:
bool isPointerToPointer(const Value* V) {
const Type* T = V->getType();
return T->isPointerTy() && T->getContainedType(0)->isPointerTy();
}
Других решений пока нет …