]> andersk Git - splint.git/blobdiff - src/functionClauseList.c
Fixed bug in makefile causing unnecessary remaking of cgrammar.c.
[splint.git] / src / functionClauseList.c
index a542b6051a4c451e8e2b6d49006165a4727e9162..d543b43eeb084a8290aad244afe8354364a2d04d 100644 (file)
@@ -172,3 +172,40 @@ functionClauseList_free (functionClauseList s)
     }
 }
 
+void
+functionClauseList_ImplictConstraints (functionClauseList s)
+{
+  functionClauseList_elements(s, el)
+    {
+      if (functionClause_isRequires(el) )
+       {
+         functionConstraint con;
+
+         con = functionClause_getRequires(el);
+         if (functionConstraint_hasBufferConstraint(con) )
+           {
+             if (con->kind == FCT_BUFFER)
+               {
+                 constraintList implCons = getImplicitFcnConstraints ();
+
+                 TPRINTF((message("functionClauseList_ImplictConstraints adding the implict constraints: %s to %s",
+                                  constraintList_print(implCons), constraintList_print( con->constraint.buffer) ) ));
+                 
+                 con->constraint.buffer  = constraintList_addList ( con->constraint.buffer, constraintList_copy(implCons));
+
+                 TPRINTF((message("functionClauseList_ImplictConstraints the new constraint is %s",
+                                  constraintList_print( con->constraint.buffer) ) ));
+
+                 
+               }
+             else
+               {
+                 llassert(FALSE);
+                 // fix this
+               }
+           }
+       }
+    }
+
+  end_functionClauseList_elements 
+}
This page took 0.032184 seconds and 4 git commands to generate.