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, это означает, что существует некоторая форма нулевого указателя, и можно найти его, чтобы увидеть причину.