! * Return TRUE if this node is a local variable of recursive function. */
| 131 | * Return TRUE if this node is a local variable of recursive function. |
| 132 | */ |
| 133 | bool PointerAnalysis::isLocalVarInRecursiveFun(NodeID id) const |
| 134 | { |
| 135 | const BaseObjVar* baseObjVar = pag->getBaseObject(id); |
| 136 | assert(baseObjVar && "base object not found!!"); |
| 137 | if(SVFUtil::isa<StackObjVar>(baseObjVar)) |
| 138 | { |
| 139 | if(const FunObjVar* svffun = pag->getSVFVar(id)->getFunction()) |
| 140 | { |
| 141 | return callGraphSCC->isInCycle(getCallGraph()->getCallGraphNode(svffun)->getId()); |
| 142 | } |
| 143 | } |
| 144 | return false; |
| 145 | } |
| 146 | |
| 147 | /*! |
| 148 | * Reset field sensitivity |
no test coverage detected