diff --git a/sapfor/experts/Sapfor_2017/_src/CFGraph/RD_subst.cpp b/sapfor/experts/Sapfor_2017/_src/CFGraph/RD_subst.cpp index 06a906c..948fb97 100644 --- a/sapfor/experts/Sapfor_2017/_src/CFGraph/RD_subst.cpp +++ b/sapfor/experts/Sapfor_2017/_src/CFGraph/RD_subst.cpp @@ -1235,8 +1235,9 @@ bool isArgReaches(int decl_instr, SAPFOR::BasicBlock* decl_bb, if (RDs_for_arg.size() == 1) { const int rd = *RDs_for_arg.begin(); - if (rd >= decl_bb->getInstructions().front()->getNumber() && rd < decl_instr) - return true; + if (rd >= decl_bb->getInstructions().front()->getNumber() && + rd <= decl_bb->getInstructions().back()->getNumber()) + return rd < decl_instr; } auto arg_in_from_decl_it = decl_bb->getRD_In().find(arg);