** the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
** MA 02111-1307, USA.
**
-** For information on splint: splint@cs.virginia.edu
-** To report a bug: splint-bug@cs.virginia.edu
+** For information on splint: info@splint.org
+** To report a bug: splint-bug@splint.org
** For more information: http://www.splint.org
*/
# include "exprNodeSList.h"
-/*@access constraint, exprNode @*/
+/*@access constraint, exprNode @*/ /*!!! NO! Don't do this so recklessly - design your code more carefully so you don't need to! */
+
+/*@-nullderef@*/ /* !!! DRL needs to fix this code! */
+/*@-nullstate@*/ /* !!! DRL needs to fix this code! */
+/*@-nullpass@*/ /* !!! DRL needs to fix this code! */
+/*@-temptrans@*/ /* !!! DRL needs to fix this code! */
+
static constraint inequalitySubstitute (/*@returned@*/ constraint p_c, constraintList p_p);
DPRINTF((message ("constraintList_mergeRequires: merging %s and %s ", constraintList_print (list1), constraintList_print(list2) ) ) );
+ if (context_getFlag (FLG_REDUNDANTCONSTRAINTS) )
+ {
+ ret = constraintList_copy(list1);
+ ret = constraintList_addList(ret, list2);
+ return ret;
+ }
+
/* get constraints in list1 not satified by list2 */
temp = constraintList_reflectChanges(list1, list2);
DPRINTF((message ("constraintList_mergeRequires: temp = %s", constraintList_print(temp) ) ) );
}
constraint_free(c);
- *resolved = TRUE;
+ /*drl bee: pbr*/ *resolved = TRUE;
return NULL;
}
- *resolved = FALSE;
+ /*drl bee: pbr*/ *resolved = FALSE;
ret = constraint_copy(c);
curr = doResolve (curr, post1, resolved);
- if (*resolved)
+ /*drl bee: pbr*/ if (*resolved)
{
/* curr is null so we don't try to free it*/
llassert(curr == NULL);