trailofbits/manticore
View on GitHubAttributeError: 'BoolConstant' object has no attribute 'operands'
Open
#485 opened on Sep 7, 2017
bughelp wantedneeds_reviewsmt
Description
OS / Environment
Docker: Ubuntu 16.04
Manticore version
Version: 0.1.4
Python version
Python 2.7.12
Dependencies
capstone==3.0.5rc2 manticore==0.1.4 ply==3.10 pyelftools==0.24 unicorn==1.0.1
Summary of the problem
Manticore fails with exception:
EXECUTOR:ERROR: Exception: 'BoolConstant' object has no attribute 'operands'
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/manticore/core/executor.py", line 466, in run
self.fork(current_state, e.expression, e.policy, e.setstate)
File "/usr/local/lib/python2.7/dist-packages/manticore/core/executor.py", line 379, in fork
solutions = state.concretize(expression, policy)
File "/usr/local/lib/python2.7/dist-packages/manticore/core/state.py", line 292, in concretize
silent=False)
File "/usr/local/lib/python2.7/dist-packages/manticore/core/smtlib/solver.py", line 346, in get_all_values
temp_cs.add(var==expression)
File "/usr/local/lib/python2.7/dist-packages/manticore/core/smtlib/constraints.py", line 51, in add
constraint = arithmetic_simplifier(constraint)
File "/usr/local/lib/python2.7/dist-packages/manticore/core/smtlib/visitors.py", line 472, in arithmetic_simplifier
simp.visit(expression, use_fixed_point=True)
File "/usr/local/lib/python2.7/dist-packages/manticore/core/smtlib/visitors.py", line 90, in visit
value = self._method(new_node, *operands)
File "/usr/local/lib/python2.7/dist-packages/manticore/core/smtlib/visitors.py", line 58, in _method
value = getattr(self, methodname)(expression, *args)
File "/usr/local/lib/python2.7/dist-packages/manticore/core/smtlib/visitors.py", line 316, in visit_Operation
if self._changed(expression, operands):
File "/usr/local/lib/python2.7/dist-packages/manticore/core/smtlib/visitors.py", line 310, in _changed
return any( operands[i] is not expression.operands[i] for i in range(arity))
File "/usr/local/lib/python2.7/dist-packages/manticore/core/smtlib/visitors.py", line 310, in <genexpr>
return any( operands[i] is not expression.operands[i] for i in range(arity))
AttributeError: 'BoolConstant' object has no attribute 'operands'
expression is True in:
@staticmethod
def _changed(expression, operands):
arity = len(operands)
return any( operands[i] is not expression.operands[i] for i in range(arity))