X-Git-Url: http://plrg.eecs.uci.edu/git/?p=repair.git;a=blobdiff_plain;f=Repair%2FRepairCompiler%2FMCC%2FIR%2FConstraintDependence.java;h=ae1ac7a1c088b44c72cf94c603fa29c692f31f0e;hp=cd3eb99f5a143608aa3eeb33a66f74792db5b98a;hb=f9e84f661a348d52ec5a96e246f028e3cb102fb4;hpb=e2af60de1736531dfe9f5ce4b5192e2d343434b8 diff --git a/Repair/RepairCompiler/MCC/IR/ConstraintDependence.java b/Repair/RepairCompiler/MCC/IR/ConstraintDependence.java index cd3eb99..ae1ac7a 100755 --- a/Repair/RepairCompiler/MCC/IR/ConstraintDependence.java +++ b/Repair/RepairCompiler/MCC/IR/ConstraintDependence.java @@ -199,13 +199,15 @@ public class ConstraintDependence { SetQuantifier sq=(SetQuantifier)q; if (ve.getVar()!=sq.getVar()) return false; - if (!sq.getSet().isSubset(f.getSet())) - return false; - if (!(((r.getGuardExpr() instanceof BooleanLiteralExpr)&& - ((BooleanLiteralExpr)r.getGuardExpr()).getValue()==true))||isPartial) - return false; + if (!isPartial) { + if (!sq.getSet().isSubset(f.getSet())) + return false; + if (!((r.getGuardExpr() instanceof BooleanLiteralExpr)&& + ((BooleanLiteralExpr)r.getGuardExpr()).getValue()==true)) + return false; + } Expr e2=f.isInverse()?ri.getLeftExpr():ri.getRightExpr(); - if (e2.isSafe()) + if (isPartial||e2.isSafe()) foundrule=true; else return false;