- llassert(FALSE);
- pred = exprData_getTriplePred (data);
- trueBranch = exprData_getTripleTrue (data);
- falseBranch = exprData_getTripleFalse (data);
-
- exprNode_exprTraverse (pred, FALSE, TRUE, sequencePoint );
-
- temp = pred->ensuresConstraints;
- pred->ensuresConstraints = exprNode_traversEnsuresConstraints(pred);
- constraintList_free(temp);
-
- temp = pred->requiresConstraints;
- pred->requiresConstraints = exprNode_traversRequiresConstraints(pred);
- constraintList_free(temp);
-
- temp = pred->trueEnsuresConstraints;
- pred->trueEnsuresConstraints = exprNode_traversTrueEnsuresConstraints(pred);
- constraintList_free(temp);
-
- temp = pred->falseEnsuresConstraints;
- pred->falseEnsuresConstraints = exprNode_traversFalseEnsuresConstraints(pred);
- constraintList_free(temp);
-
-
- exprNode_exprTraverse (trueBranch, FALSE, TRUE, sequencePoint );
-
- temp = trueBranch->ensuresConstraints;
- trueBranch->ensuresConstraints = exprNode_traversEnsuresConstraints(trueBranch);
- constraintList_free(temp);
-
-
- temp = trueBranch->requiresConstraints;
- trueBranch->requiresConstraints = exprNode_traversRequiresConstraints(trueBranch);
- constraintList_free(temp);
-
-
- temp = trueBranch->trueEnsuresConstraints;
- trueBranch->trueEnsuresConstraints = exprNode_traversTrueEnsuresConstraints(trueBranch);
- constraintList_free(temp);
-
- temp = trueBranch->falseEnsuresConstraints;
- trueBranch->falseEnsuresConstraints = exprNode_traversFalseEnsuresConstraints(trueBranch);
- constraintList_free(temp);
-
- exprNode_exprTraverse (falseBranch, FALSE, TRUE, sequencePoint );
-
- temp = falseBranch->ensuresConstraints;
- falseBranch->ensuresConstraints = exprNode_traversEnsuresConstraints(falseBranch);
- constraintList_free(temp);
-
-
- temp = falseBranch->requiresConstraints;
- falseBranch->requiresConstraints = exprNode_traversRequiresConstraints(falseBranch);
- constraintList_free(temp);
-
-
- temp = falseBranch->trueEnsuresConstraints;
- falseBranch->trueEnsuresConstraints = exprNode_traversTrueEnsuresConstraints(falseBranch);
- constraintList_free(temp);
-
- temp = falseBranch->falseEnsuresConstraints;
- falseBranch->falseEnsuresConstraints = exprNode_traversFalseEnsuresConstraints(falseBranch);
- constraintList_free(temp);
-
- /* if pred is true e equals true otherwise pred equals false */
-
- cons = constraint_makeEnsureEqual (e, trueBranch, sequencePoint);
- trueBranch->ensuresConstraints = constraintList_add(trueBranch->ensuresConstraints, cons);
-
- cons = constraint_makeEnsureEqual (e, trueBranch, sequencePoint);
- falseBranch->ensuresConstraints = constraintList_add(falseBranch->ensuresConstraints, cons);