This patch deals with a rather complicated situation involving
overlapping instances. It's all explained in the commments
Note [Subtle interaction of recursion and overlap]
The absence of this case make DoCon and regex-base fail with
an error about overlapping instances. Now they work properly
again.