Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
Description
This issue is created automatically through a Github pull request on behalf of Seldaek:
Url: https://github.com/doctrine/common/pull/195
Message:
If someone can take this and fix the issue it'd be great. I couldn't figure it out at a quick glance and I don't really have time, but it's a pretty messed up bug and not so trivial to debug if you don't know what happens in the background so I'd say it's pretty important.
I digged a little deeper. The test case is a great one
The DocLexer cuts ut -1 position from the first @ (which is the @ in the @example.com). so that the lexer has to process:
o@example.com" * } * * @AnnotationTargetPropertyMethod("Bar")So that the catchable pattern: ("(?:[^"]|"")*") matches here to greedy (it matches string in quotes):
" * } * * @AnnotationTargetPropertyMethod("As a result the lexer does not catch the correct @ from the Annotation
I could not think of a fast fix for this. But maybe tomorrow.
(leaving quoted string pattern with an @ was a wrong idea)
Its not a workaround to do more or less cutting in the parser, because not-well-formed quoted strings would break anyway