/*
** Splint - annotation-assisted static program checker
-** Copyright (C) 1994-2002 University of Virginia,
+** Copyright (C) 1994-2003 University of Virginia,
** Massachusetts Institute of Technology
**
** This program is free software; you can redistribute it and/or modify it
}
}
+/*drl modified */
+void functionConstraint_addBufferConstraints (functionConstraint node, constraintList clist)
+{
+ constraintList temp;
-
-
-
-
-
-
-
+ temp = constraintList_copy (clist);
+
+ if (functionConstraint_isDefined (node))
+ {
+ if (node->kind == FCT_CONJUNCT)
+ {
+ functionConstraint_addBufferConstraints (node->constraint.conjunct.op1, constraintList_copy(temp) );
+ functionConstraint_addBufferConstraints (node->constraint.conjunct.op2,temp);
+ }
+ else
+ {
+ if (node->kind == FCT_BUFFER)
+ {
+ node->constraint.buffer = constraintList_addListFree(node->constraint.buffer, temp);
+ }
+ else
+ {
+ constraintList_free (temp);
+ return;
+ }
+ }
+ }
+ else
+ {
+ constraintList_free (temp);
+ return;
+ }
+}