Not sure if this is an angr bug or an ailment bug, but I got it when I hit tab in a-m:
Traceback (most recent call last):
File "/home/audrey/angr/ailment/ailment/tagged_object.py", line 23, in __getattr__
return self.tags[item]
KeyError: 'copy'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/audrey/angr/angr-management/angrmanagement/ui/views/disassembly_view.py", line 206, in keyReleaseEvent
self.decompile_current_function()
File "/home/audrey/angr/angr-management/angrmanagement/ui/views/disassembly_view.py", line 399, in decompile_current_function
self.workspace.decompile_function(self._current_function.am_obj, curr_ins=curr_ins)
File "/home/audrey/angr/angr-management/angrmanagement/ui/workspace.py", line 305, in decompile_function
view.function = func
File "/home/audrey/angr/angr-management/angrmanagement/ui/views/code_view.py", line 82, in function
self.decompile()
File "/home/audrey/angr/angr-management/angrmanagement/ui/views/code_view.py", line 46, in decompile
d = self.workspace.instance.project.analyses.Decompiler(
File "/home/audrey/angr/angr/angr/analyses/analysis.py", line 115, in __call__
oself.__init__(*args, **kwargs)
File "/home/audrey/angr/angr/angr/analyses/decompiler/decompiler.py", line 30, in __init__
self._decompile()
File "/home/audrey/angr/angr/angr/analyses/decompiler/decompiler.py", line 47, in _decompile
clinic = self.project.analyses.Clinic(self.func,
File "/home/audrey/angr/angr/angr/analyses/analysis.py", line 115, in __call__
oself.__init__(*args, **kwargs)
File "/home/audrey/angr/angr/angr/analyses/decompiler/clinic.py", line 74, in __init__
self._analyze()
File "/home/audrey/angr/angr/angr/analyses/decompiler/clinic.py", line 145, in _analyze
ail_graph = self._simplify_blocks(ail_graph, stack_pointer_tracker=spt)
File "/home/audrey/angr/angr/angr/utils/timing.py", line 28, in timed_func
return func(*args, **kwargs)
File "/home/audrey/angr/angr/angr/analyses/decompiler/clinic.py", line 305, in _simplify_blocks
simplified = self._simplify_block(ail_block, stack_pointer_tracker=stack_pointer_tracker)
File "/home/audrey/angr/angr/angr/analyses/decompiler/clinic.py", line 321, in _simplify_block
simp = self.project.analyses.AILBlockSimplifier(
File "/home/audrey/angr/angr/angr/analyses/analysis.py", line 115, in __call__
oself.__init__(*args, **kwargs)
File "/home/audrey/angr/angr/angr/analyses/decompiler/block_simplifier.py", line 52, in __init__
self._analyze()
File "/home/audrey/angr/angr/angr/analyses/decompiler/block_simplifier.py", line 66, in _analyze
new_block = self._simplify_block_once(block)
File "/home/audrey/angr/angr/angr/analyses/decompiler/block_simplifier.py", line 82, in _simplify_block_once
propagator = self.project.analyses.Propagator(block=block, stack_pointer_tracker=self._stack_pointer_tracker)
File "/home/audrey/angr/angr/angr/analyses/analysis.py", line 115, in __call__
oself.__init__(*args, **kwargs)
File "/home/audrey/angr/angr/angr/analyses/propagator/propagator.py", line 375, in __init__
self._analyze()
File "/home/audrey/angr/angr/angr/analyses/propagator/propagator.py", line 515, in _analyze
self._analysis_core_graph()
File "/home/audrey/angr/angr/angr/analyses/forward_analysis/forward_analysis.py", line 240, in _analysis_core_graph
changed, output_state = self._run_on_node(n, job_state)
File "/home/audrey/angr/angr/angr/analyses/propagator/propagator.py", line 422, in _run_on_node
state = engine.process(state, block=block, project=self.project, base_state=self._base_state,
File "/home/audrey/angr/angr/angr/analyses/propagator/engine_base.py", line 28, in process
self._process(state, None, block=kwargs.pop('block', None))
File "/home/audrey/angr/angr/angr/engines/light/engine.py", line 649, in _process
self._process_Stmt(whitelist=whitelist)
File "/home/audrey/angr/angr/angr/engines/light/engine.py", line 666, in _process_Stmt
self._handle_Stmt(stmt)
File "/home/audrey/angr/angr/angr/engines/light/engine.py", line 712, in _handle_Stmt
getattr(self, old_handler)(stmt)
File "/home/audrey/angr/angr/angr/analyses/propagator/engine_ail.py", line 102, in _ail_handle_Return
self._expr(ret_expr)
File "/home/audrey/angr/angr/angr/engines/light/engine.py", line 687, in _expr
return h(expr)
File "/home/audrey/angr/angr/angr/analyses/propagator/engine_ail.py", line 143, in _ail_handle_Register
new_expr = self.state.get_variable(expr)
File "/home/audrey/angr/angr/angr/analyses/propagator/propagator.py", line 263, in get_variable
v = first_obj.copy()
File "/home/audrey/angr/ailment/ailment/tagged_object.py", line 25, in __getattr__
return super(TaggedObject, self).__getattribute__(item)
AttributeError: 'Const' object has no attribute 'copy'