Removing unused and unnecessary code #5309
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request Check List
A follow-up to my remark in #5305 that
seen
looked redundant on the node in the solver's depth first search, because the surrounding search already had avisited
.The doubt in my mind was that there was a second caller of
reachable()
, here, and I hadn't taken the time to figure out the effect on that call site.On reflection it is clear that the
seen
cache will be populated by the time we get to that second caller - which happens after the depth-first search has completed. As a result, that secondreachable()
never returns anything other than an empty list.(I also confirmed this by asserting as much in the code, and verifying that the test suite still passed)
Since nothing seems to be broken by that list being empty, I've assumed that we don't need that second
reachable()
call after all; and then it is clear thatseen
is indeed redundant. So I've made two commits:seen
seen
(I probably have given myself a small merge conflict with #5305, happy to sort that out if and when the first of these is merged).