Fix bug with /\A.*?(?:a|b(*THEN)c)/ by removing the tail recursion optimization for the final branch. Also fix a similar bug for conditional subpatterns.