Clang AST - isNullPointerConstant()

Я пытаюсь проверить, является ли входные аргументы для CallExpr нулевым / нулевым в Objective C, используя AST Clang

Я видел, что есть метод isNullPointerConstant(), который, кажется, будет делать то, что я хочу http://clang.llvm.org/doxygen/classclang_1_1Expr.html

Тем не менее, я не совсем уверен, как вызвать этот метод. В частности, что это за NullPointerConstantValueDependence, которое оно принимает, и что такое NullPointerConstantKind возврата?

Что мне нужно сделать, это просто оценить, является ли аргумент нулевым или нет, логическое возвращаемое значение будет работать нормально. Есть ли другой способ, которым я должен смотреть?

1 ответ

Это сработало для меня в конце

Expr::NullPointerConstantKind kind = expr->isNullPointerConstant(*Context, Expr::NullPointerConstantValueDependence());

Если kind> 0, это означает, что существует некоторая форма нулевого указателя, и можно найти его, чтобы увидеть причину.

Другие вопросы по тегам