Btw, a few issues here:
1. It looks like the order of successors from the loop_seer is reversed, I mean not the same as what it is without "bound=1"
For the nested forloop (function test4 in the test_whileloop.c), though angr terminates, I do not think it terminates at the correct position, i.e., when bound=1, angr terminates the explored state after executing the same branch instruction third times, which should be twice.
looks like "bound=1" does not work on following code:
You may run
pypy3 angr_running.py ./test_whileloop 0 test6
to check it. bug_loop_bound.zip