jakartaee / expression-language

Jakarta Expression Language
https://eclipse.org/ee4j/el
Other
68 stars 49 forks source link

Proudction for literal expression treats #${...} as literal #15

Closed glassfishrobot closed 11 years ago

glassfishrobot commented 14 years ago

The current production for literal component is: LiteralComponent ::= ([^$#])([$#])? | ([^$#])([$#][^{]) | ([^$#])*

Depending on exact details of the parser implementation, this results in #$

{1+1}

being treated as a literal rather than the expected behaviour of evaluating to #2.

This can be correct by changing the production for literal component to: LiteralComponent ::= ([^$#])([$#])? | ([^$#])([$#][^{$#]) | ([^$#])*

Environment

Operating System: All Platform: All

Affected Versions

[current]

glassfishrobot commented 6 years ago
glassfishrobot commented 14 years ago

@glassfishrobot Commented Reported by markt_asf

glassfishrobot commented 11 years ago

@glassfishrobot Commented kchung said: The grammar in the spec has been replaced by the RI's JAVACC grammar in EL 3.0, which, interestingly, also has this problem. It is now fixed.

glassfishrobot commented 7 years ago

@glassfishrobot Commented This issue was imported from java.net JIRA UEL-15

glassfishrobot commented 11 years ago

@glassfishrobot Commented Marked as fixed on Friday, March 15th 2013, 11:36:13 am