Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

X3: skip_over: Remove redundant check #373

Merged
merged 1 commit into from
Mar 11, 2018

Conversation

Kojoley
Copy link
Collaborator

@Kojoley Kojoley commented Mar 6, 2018

End iterator check is redundant here because it is done in skipper.

End iterator check is redundant here because it is done in skipper.
@djowel
Copy link
Member

djowel commented Mar 6, 2018

I think we should at least have a precondition assert there to be sure.

@Kojoley
Copy link
Collaborator Author

Kojoley commented Mar 6, 2018

We can't place an assertion here, it will fire when postskip is enabled and there is nothing to postskip.

@djowel
Copy link
Member

djowel commented Mar 6, 2018

We can't place an assertion here, it will fire when postskip is enabled and there is nothing to postskip.

We can add the check in the postskip so it won't fire.

@Kojoley
Copy link
Collaborator Author

Kojoley commented Mar 6, 2018

I don't know how it can be done without touching everything else, and it will still fire if eps or attr is the last parser in a sequence.

@djowel
Copy link
Member

djowel commented Mar 6, 2018

I don't know how it can be done without touching everything else, and it will still fire if eps or attr is the last parser in a sequence.

Yeah, thinking about it some more, I'm coming to the same conclusion.

@djowel
Copy link
Member

djowel commented Mar 6, 2018

OK, you are right. It should not be done here.

@Kojoley Kojoley merged commit bfec8c6 into boostorg:develop Mar 11, 2018
@Kojoley Kojoley deleted the x3-skip_over-redundant-check branch March 11, 2018 14:38
Kojoley added a commit that referenced this pull request Mar 12, 2018
End iterator check is redundant here because it is done in skipper.

Follow-up to PR #373.
@breuhan
Copy link

breuhan commented Oct 10, 2018

Attention this change is introducing a regression in boost 1.68.0 and 1.67.0 if you use something like (as shown in some example code):
phrase_parse(begin, end, rule, !byte);
The program than hangs in an infinite loop. I was able to fix that by using
phrase_parse(begin, end, rule, !eps);

@Kojoley
Copy link
Collaborator Author

Kojoley commented Oct 10, 2018

@cylonbrain please provide a minimal working example. If you think there is a regression it would be better to open an issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants