We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Error being raised while exploring ls
This error is being thrown after a simple exploration:


```
Traceback (most recent call last):
  File "try.py", line 5, in <module>
    sm.explore()
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py", line 239, in explore
    self.run(stash=stash, n=n, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py", line 261, in run
    self.step(stash=stash, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/misc/hookset.py", line 75, in __call__
    result = current_hook(self.func.__self__, *args, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/exploration_techniques/explorer.py", line 96, in step
    return simgr.step(stash=stash, extra_stop_points=base_extra_stop_points | self._extra_stop_points, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/misc/hookset.py", line 80, in __call__
    return self.func(*args, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py", line 346, in step
    successors = self.step_state(state, successor_func=successor_func, **run_args)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py", line 383, in step_state
    successors = self.successors(state, successor_func=successor_func, **run_args)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py", line 422, in successors
    return self._project.factory.successors(state, **run_args)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/factory.py", line 60, in successors
    return self.default_engine.process(*args, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/vex/light/slicing.py", line 19, in process
    return super().process(*args, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/engine.py", line 149, in process
    self.process_successors(self.successors, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/failure.py", line 21, in process_successors
    return super().process_successors(successors, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/syscall.py", line 38, in process_successors
    return self.process_procedure(state, successors, sys_procedure, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/procedure.py", line 37, in process_procedure
    inst = procedure.execute(state, successors, ret_to=ret_to, arguments=arguments)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_procedure.py", line 230, in execute
    r = getattr(inst, inst.run_func)(*sim_args, **inst.kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/procedures/linux_kernel/iovec.py", line 21, in run
    if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/state_plugins/solver.py", line 126, in concrete_shortcut_bool
    return f(self, *args, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/state_plugins/sim_action_object.py", line 57, in ast_stripper
    return f(*new_args, **new_kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/state_plugins/solver.py", line 89, in wrapped_f
    return f(*args, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/angr/state_plugins/solver.py", line 585, in is_true
    return self._solver.is_true(e, extra_constraints=self._adjust_constraint_list(extra_constraints), exact=exact)
  File "/home/berlinm/.local/lib/python3.7/site-packages/claripy/frontend_mixins/concrete_handler_mixin.py", line 53, in is_true
    return super(ConcreteHandlerMixin, self).is_true(e, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/claripy/frontend_mixins/constraint_filter_mixin.py", line 60, in is_true
    return super(ConstraintFilterMixin, self).is_true(e, extra_constraints=ec, **kwargs)
  File "/home/berlinm/.local/lib/python3.7/site-packages/claripy/frontends/composite_frontend.py", line 349, in is_true
    r = ms.is_true(e, extra_constraints=extra_constraints, exact=exact)
  File "/home/berlinm/.local/lib/python3.7/site-packages/claripy/frontends/full_frontend.py", line 184, in is_true
    return e.is_true()
AttributeError: 'NotImplementedType' object has no attribute 'is_true'
```

**Environment Information.**
angr environment report
=============================
Date: 2020-12-30 12:39:53.872698
Running in virtual environment at /home/berlinm/.virtualenvs/angr
Platform: linux-x86_64
Python version: 3.7.9 (7e6e2bb30ac5, Nov 18 2020, 10:55:52)
[PyPy 7.3.3-beta0 with GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]
######## angr #########
Python found it in /home/berlinm/.local/lib/python3.7/site-packages/angr
Pip version angr 9.0.5034
Couldn't find git info
######## ailment #########
Python found it in /home/berlinm/.local/lib/python3.7/site-packages/ailment
Pip version ailment 9.0.5034
Couldn't find git info
######## cle #########
Python found it in /home/berlinm/.local/lib/python3.7/site-packages/cle
Pip version cle 9.0.5034
Couldn't find git info
######## pyvex #########
Python found it in /home/berlinm/.local/lib/python3.7/site-packages/pyvex
Pip version pyvex 9.0.5034
Couldn't find git info
######## claripy #########
Python found it in /home/berlinm/.local/lib/python3.7/site-packages/claripy
Pip version claripy 9.0.5034
Couldn't find git info
######## archinfo #########
Python found it in /home/berlinm/.local/lib/python3.7/site-packages/archinfo
Pip version archinfo 9.0.5034
Couldn't find git info
######## z3 #########
Python found it in /home/berlinm/.local/lib/python3.7/site-packages/z3
Pip version z3-solver 4.8.9.0
Couldn't find git info
######## unicorn #########
Python found it in /home/berlinm/.local/lib/python3.7/site-packages/unicorn
Pip version unicorn 1.0.2rc4
Couldn't find git info
######### Native Module Info ##########
angr: <CDLL '/home/berlinm/.local/lib/python3.7/site-packages/angr/lib/angr_native.so', handle 61bfe90 at 0x638ebb8>
unicorn: <CDLL '/home/berlinm/.local/lib/python3.7/site-packages/unicorn/lib/libunicorn.so', handle 2393fd0 at 0x7fcacfae5da8>
pyvex: <cffi.api._make_ffi_library.<locals>.FFILibrary object at 0x00007fcad0b9b398>
z3: <CDLL '/home/berlinm/.local/lib/python3.7/site-packages/z3/lib/libz3.so', handle 2fc8df0 at 0x3206758>


**To Reproduce.**

project = angr.Project('ls')

sm = project.factory.simulation_manager(project.factory.call_state(0x404a70)) # Some function's address
sm.explore()


# The binary (inside the zip):
[ls.zip](https://github.com/angr/angr/files/5753958/ls.zip)






--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `angr/procedures/linux_kernel/iovec.py`
Content:
```
1 import angr
2 from ..posix.read import read
3 from ..posix.write import write
4 from ...sim_type import register_types, parse_types
5 
6 register_types(parse_types("""
7 struct iovec {
8     void  *iov_base;    /* Starting address */
9     size_t iov_len;     /* Number of bytes to transfer */
10 };
11 """))
12 
13 class readv(angr.SimProcedure):
14     def run(self, fd, iovec, iovcnt):
15         if iovec.symbolic or iovcnt.symbolic:
16             raise angr.errors.SimPosixError("Can't handle symbolic arguments to readv")
17         iovcnt = self.state.solver.eval(iovcnt)
18         res = 0
19         for element in self.state.mem[iovec].struct.iovec.array(iovcnt).resolved:
20             tmpres = self.inline_call(read, fd, element.iov_base, element.iov_len)
21             if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):
22                 return tmpres
23 
24         return res
25 
26 
27 class writev(angr.SimProcedure):
28     def run(self, fd, iovec, iovcnt):
29         if iovec.symbolic or iovcnt.symbolic:
30             raise angr.errors.SimPosixError("Can't handle symbolic arguments to writev")
31         iovcnt = self.state.solver.eval(iovcnt)
32         res = 0
33         for element in self.state.mem[iovec].struct.iovec.array(iovcnt).resolved:
34             tmpres = self.inline_call(write, fd, element.iov_base, element.iov_len).ret_expr
35             if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):
36                 return tmpres
37 
38         return res
39
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/angr/procedures/linux_kernel/iovec.py b/angr/procedures/linux_kernel/iovec.py
--- a/angr/procedures/linux_kernel/iovec.py
+++ b/angr/procedures/linux_kernel/iovec.py
@@ -17,7 +17,7 @@
         iovcnt = self.state.solver.eval(iovcnt)
         res = 0
         for element in self.state.mem[iovec].struct.iovec.array(iovcnt).resolved:
-            tmpres = self.inline_call(read, fd, element.iov_base, element.iov_len)
+            tmpres = self.inline_call(read, fd, element.iov_base, element.iov_len).ret_expr
             if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):
                 return tmpres

{"golden_diff": "diff --git a/angr/procedures/linux_kernel/iovec.py b/angr/procedures/linux_kernel/iovec.py\n--- a/angr/procedures/linux_kernel/iovec.py\n+++ b/angr/procedures/linux_kernel/iovec.py\n@@ -17,7 +17,7 @@\n         iovcnt = self.state.solver.eval(iovcnt)\n         res = 0\n         for element in self.state.mem[iovec].struct.iovec.array(iovcnt).resolved:\n-            tmpres = self.inline_call(read, fd, element.iov_base, element.iov_len)\n+            tmpres = self.inline_call(read, fd, element.iov_base, element.iov_len).ret_expr\n             if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):\n                 return tmpres\n", "issue": "Error being raised while exploring ls\nThis error is being thrown after a simple exploration:\r\n\r\n\r\n```\r\nTraceback (most recent call last):\r\n  File \"try.py\", line 5, in <module>\r\n    sm.explore()\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py\", line 239, in explore\r\n    self.run(stash=stash, n=n, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py\", line 261, in run\r\n    self.step(stash=stash, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/misc/hookset.py\", line 75, in __call__\r\n    result = current_hook(self.func.__self__, *args, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/exploration_techniques/explorer.py\", line 96, in step\r\n    return simgr.step(stash=stash, extra_stop_points=base_extra_stop_points | self._extra_stop_points, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/misc/hookset.py\", line 80, in __call__\r\n    return self.func(*args, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py\", line 346, in step\r\n    successors = self.step_state(state, successor_func=successor_func, **run_args)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py\", line 383, in step_state\r\n    successors = self.successors(state, successor_func=successor_func, **run_args)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_manager.py\", line 422, in successors\r\n    return self._project.factory.successors(state, **run_args)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/factory.py\", line 60, in successors\r\n    return self.default_engine.process(*args, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/vex/light/slicing.py\", line 19, in process\r\n    return super().process(*args, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/engine.py\", line 149, in process\r\n    self.process_successors(self.successors, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/failure.py\", line 21, in process_successors\r\n    return super().process_successors(successors, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/syscall.py\", line 38, in process_successors\r\n    return self.process_procedure(state, successors, sys_procedure, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/engines/procedure.py\", line 37, in process_procedure\r\n    inst = procedure.execute(state, successors, ret_to=ret_to, arguments=arguments)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/sim_procedure.py\", line 230, in execute\r\n    r = getattr(inst, inst.run_func)(*sim_args, **inst.kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/procedures/linux_kernel/iovec.py\", line 21, in run\r\n    if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/state_plugins/solver.py\", line 126, in concrete_shortcut_bool\r\n    return f(self, *args, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/state_plugins/sim_action_object.py\", line 57, in ast_stripper\r\n    return f(*new_args, **new_kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/state_plugins/solver.py\", line 89, in wrapped_f\r\n    return f(*args, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/angr/state_plugins/solver.py\", line 585, in is_true\r\n    return self._solver.is_true(e, extra_constraints=self._adjust_constraint_list(extra_constraints), exact=exact)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/claripy/frontend_mixins/concrete_handler_mixin.py\", line 53, in is_true\r\n    return super(ConcreteHandlerMixin, self).is_true(e, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/claripy/frontend_mixins/constraint_filter_mixin.py\", line 60, in is_true\r\n    return super(ConstraintFilterMixin, self).is_true(e, extra_constraints=ec, **kwargs)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/claripy/frontends/composite_frontend.py\", line 349, in is_true\r\n    r = ms.is_true(e, extra_constraints=extra_constraints, exact=exact)\r\n  File \"/home/berlinm/.local/lib/python3.7/site-packages/claripy/frontends/full_frontend.py\", line 184, in is_true\r\n    return e.is_true()\r\nAttributeError: 'NotImplementedType' object has no attribute 'is_true'\r\n```\r\n\r\n**Environment Information.**\r\nangr environment report\r\n=============================\r\nDate: 2020-12-30 12:39:53.872698\r\nRunning in virtual environment at /home/berlinm/.virtualenvs/angr\r\nPlatform: linux-x86_64\r\nPython version: 3.7.9 (7e6e2bb30ac5, Nov 18 2020, 10:55:52)\r\n[PyPy 7.3.3-beta0 with GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]\r\n######## angr #########\r\nPython found it in /home/berlinm/.local/lib/python3.7/site-packages/angr\r\nPip version angr 9.0.5034\r\nCouldn't find git info\r\n######## ailment #########\r\nPython found it in /home/berlinm/.local/lib/python3.7/site-packages/ailment\r\nPip version ailment 9.0.5034\r\nCouldn't find git info\r\n######## cle #########\r\nPython found it in /home/berlinm/.local/lib/python3.7/site-packages/cle\r\nPip version cle 9.0.5034\r\nCouldn't find git info\r\n######## pyvex #########\r\nPython found it in /home/berlinm/.local/lib/python3.7/site-packages/pyvex\r\nPip version pyvex 9.0.5034\r\nCouldn't find git info\r\n######## claripy #########\r\nPython found it in /home/berlinm/.local/lib/python3.7/site-packages/claripy\r\nPip version claripy 9.0.5034\r\nCouldn't find git info\r\n######## archinfo #########\r\nPython found it in /home/berlinm/.local/lib/python3.7/site-packages/archinfo\r\nPip version archinfo 9.0.5034\r\nCouldn't find git info\r\n######## z3 #########\r\nPython found it in /home/berlinm/.local/lib/python3.7/site-packages/z3\r\nPip version z3-solver 4.8.9.0\r\nCouldn't find git info\r\n######## unicorn #########\r\nPython found it in /home/berlinm/.local/lib/python3.7/site-packages/unicorn\r\nPip version unicorn 1.0.2rc4\r\nCouldn't find git info\r\n######### Native Module Info ##########\r\nangr: <CDLL '/home/berlinm/.local/lib/python3.7/site-packages/angr/lib/angr_native.so', handle 61bfe90 at 0x638ebb8>\r\nunicorn: <CDLL '/home/berlinm/.local/lib/python3.7/site-packages/unicorn/lib/libunicorn.so', handle 2393fd0 at 0x7fcacfae5da8>\r\npyvex: <cffi.api._make_ffi_library.<locals>.FFILibrary object at 0x00007fcad0b9b398>\r\nz3: <CDLL '/home/berlinm/.local/lib/python3.7/site-packages/z3/lib/libz3.so', handle 2fc8df0 at 0x3206758>\r\n\r\n\r\n**To Reproduce.**\r\n\r\nproject = angr.Project('ls')\r\n\r\nsm = project.factory.simulation_manager(project.factory.call_state(0x404a70)) # Some function's address\r\nsm.explore()\r\n\r\n\r\n# The binary (inside the zip):\r\n[ls.zip](https://github.com/angr/angr/files/5753958/ls.zip)\r\n\r\n\r\n\r\n\r\n\n", "before_files": [{"content": "import angr\nfrom ..posix.read import read\nfrom ..posix.write import write\nfrom ...sim_type import register_types, parse_types\n\nregister_types(parse_types(\"\"\"\nstruct iovec {\n    void  *iov_base;    /* Starting address */\n    size_t iov_len;     /* Number of bytes to transfer */\n};\n\"\"\"))\n\nclass readv(angr.SimProcedure):\n    def run(self, fd, iovec, iovcnt):\n        if iovec.symbolic or iovcnt.symbolic:\n            raise angr.errors.SimPosixError(\"Can't handle symbolic arguments to readv\")\n        iovcnt = self.state.solver.eval(iovcnt)\n        res = 0\n        for element in self.state.mem[iovec].struct.iovec.array(iovcnt).resolved:\n            tmpres = self.inline_call(read, fd, element.iov_base, element.iov_len)\n            if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):\n                return tmpres\n\n        return res\n\n\nclass writev(angr.SimProcedure):\n    def run(self, fd, iovec, iovcnt):\n        if iovec.symbolic or iovcnt.symbolic:\n            raise angr.errors.SimPosixError(\"Can't handle symbolic arguments to writev\")\n        iovcnt = self.state.solver.eval(iovcnt)\n        res = 0\n        for element in self.state.mem[iovec].struct.iovec.array(iovcnt).resolved:\n            tmpres = self.inline_call(write, fd, element.iov_base, element.iov_len).ret_expr\n            if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):\n                return tmpres\n\n        return res\n", "path": "angr/procedures/linux_kernel/iovec.py"}], "after_files": [{"content": "import angr\nfrom ..posix.read import read\nfrom ..posix.write import write\nfrom ...sim_type import register_types, parse_types\n\nregister_types(parse_types(\"\"\"\nstruct iovec {\n    void  *iov_base;    /* Starting address */\n    size_t iov_len;     /* Number of bytes to transfer */\n};\n\"\"\"))\n\nclass readv(angr.SimProcedure):\n    def run(self, fd, iovec, iovcnt):\n        if iovec.symbolic or iovcnt.symbolic:\n            raise angr.errors.SimPosixError(\"Can't handle symbolic arguments to readv\")\n        iovcnt = self.state.solver.eval(iovcnt)\n        res = 0\n        for element in self.state.mem[iovec].struct.iovec.array(iovcnt).resolved:\n            tmpres = self.inline_call(read, fd, element.iov_base, element.iov_len).ret_expr\n            if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):\n                return tmpres\n\n        return res\n\n\nclass writev(angr.SimProcedure):\n    def run(self, fd, iovec, iovcnt):\n        if iovec.symbolic or iovcnt.symbolic:\n            raise angr.errors.SimPosixError(\"Can't handle symbolic arguments to writev\")\n        iovcnt = self.state.solver.eval(iovcnt)\n        res = 0\n        for element in self.state.mem[iovec].struct.iovec.array(iovcnt).resolved:\n            tmpres = self.inline_call(write, fd, element.iov_base, element.iov_len).ret_expr\n            if self.state.solver.is_true(self.state.solver.SLT(tmpres, 0)):\n                return tmpres\n\n        return res\n", "path": "angr/procedures/linux_kernel/iovec.py"}]}