@wali.PySemElem.printexc def __str__(self): if self.getuserdata()["isreached"] == True: return "ONE" else: return "ZERO" reachOne = PyReach(True) reachOnePtr = wali.SemElemPtr(reachOne) reachZero = PyReach(False) reachZeroPtr = wali.PySemElemPtr(reachZero) # Test domain wali.test_semelem_impl(reachOnePtr) print "One element: ", str(reachOne) print "Zero element: ", str(reachZero) myWpds = wali.FWPDS() p = wali.get_key("p") accept = wali.get_key("accept") n = [] for i in range(0, 12): n += [wali.get_key("n" + str(i))] # f intraprocedural myWpds.add_rule(p, n[0], p, n[1], reachOnePtr) reachOnePtr = wali.SemElemPtr(reachOne)
def test_basicweightdomain(self): a = ConstDom("") wali.test_semelem_impl(wali.SemElemPtr(a))
import os.path root_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) lib_dir = os.path.join(root_dir, 'lib') print "Could not load the 'wali' module, maybe you need to:" print "export LD_LIBRARY_PATH=" + lib_dir raise e reachOne = wali.Reach(True) reachOnePtr = wali.SemElemPtr(reachOne) #reachOne = wali.SemElemPtr() reachZero = wali.Reach(False) reachZeroPtr = wali.SemElemPtr(reachZero) #Test domain wali.test_semelem_impl(reachOnePtr) myWpds = wali.FWPDS() p = wali.get_key("p") accept = wali.get_key("accept") n = [] for i in range(0, 12): n += [wali.get_key("n" + str(i))] #f intraprocedural myWpds.add_rule(p, n[0], p, n[1], reachOnePtr) myWpds.add_rule(p, n[0], p, n[1], reachOnePtr) myWpds.add_rule(p, n[1], p, n[2], reachOnePtr) myWpds.add_rule(p, n[1], p, n[3], reachOnePtr) myWpds.add_rule(p, n[2], p, n[4], reachOnePtr)