Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix a flag-handling bug related to haskell#1855.
This was an innocent-looking but severe bug that was triggered for manual flags in certain circumstances: if both choices of a manual flag are already invalidated by other decisions, then the old code was removing the nodes underneath the flag completely. As a result, there's a node with no children rather than a node with two failure-children. The fail-nodes carry important information that is used to compute how far we can backtrack. If this information is removed, strange things happen.
- Loading branch information