[ https://issues.apache.org/jira/browse/VELOCITY-874?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexander Rosenberg updated VELOCITY-874: ----------------------------------------- Description: This works as expected: {noformat} ## @noparams #set ($n = 5) #set ($m = $n+1) <p>$m</p> {noformat} Output: {{<p>6</p>}} However, subtraction doesn't work: {noformat} ## @noparams #set ($n = 5) #set ($m = $n-1) <p>$m</p> {noformat} Output: {{<p>$m</p>}} >From [SO Q&A >#15448108|http://stackoverflow.com/questions/15448108/subtraction-is-not-working-with-velocity-template], > it appears that this behavior is due to the parser treating the >hyphen/dash/minus-sign as part of the identifier, but certainly an exception >should be made for when the "identifier" ends with only digits and/or hyphens. Another case: {noformat} ## @noparams #set ($n = 5) #set ($m = $n- 1) <p>$m</p> {noformat} In this case we get an all too familiar {{ParseErrorException}}: {noformat} org.apache.velocity.exception.ParseErrorException: Encountered "1" at getRenderedContent[line 4, column 16] Was expecting one of: <RPAREN> ... "-" ... "+" ... "*" ... "/" ... "%" ... <LOGICAL_AND> ... <LOGICAL_OR> ... <LOGICAL_LT> ... <LOGICAL_LE> ... <LOGICAL_GT> ... <LOGICAL_GE> ... <LOGICAL_EQUALS> ... <LOGICAL_NOT_EQUALS> ... at org.apache.velocity.runtime.RuntimeInstance.evaluate(RuntimeInstance.java:1202) at org.apache.velocity.runtime.RuntimeInstance.evaluate(RuntimeInstance.java:1164) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:219) at com.atlassian.confluence.util.velocity.VelocityUtils.writeRenderedContent(VelocityUtils.java:148) at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:130) at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:117) at com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:113) at com.atlassian.confluence.macro.GenericVelocityMacro.execute(GenericVelocityMacro.java:101) ~~~snipped~~~ {noformat} This bug is related to (or possibly the same as) [bug 873|http://issues.apache.org/jira/browse/VELOCITY-873]. was: This works as expected: {noformat} ## @noparams #set ($n = 5) #set ($m = $n+1) <p>$m</p> {noformat} Output: {{<p>6</p>}} However, subtraction doesn't work: {noformat} ## @noparams #set ($n = 5) #set ($m = $n-1) <p>$m</p> {noformat} Output: {{<p>$m</p>}} >From [SO Q&A >#15448108|http://stackoverflow.com/questions/15448108/subtraction-is-not-working-with-velocity-template], > it appears that this behavior is due to the parser treating the >hyphen/dash/minus-sign as part of the identifier, but certainly an exception >should be made for when the "identifier" ends with only digits and/or hyphens. > Subtraction doesn't work as expected > ------------------------------------ > > Key: VELOCITY-874 > URL: https://issues.apache.org/jira/browse/VELOCITY-874 > Project: Velocity > Issue Type: Bug > Environment: VTL in user macro in Atlassian Confluence 5.9.4 > Reporter: Alexander Rosenberg > > This works as expected: > {noformat} > ## @noparams > #set ($n = 5) > #set ($m = $n+1) > <p>$m</p> > {noformat} > Output: {{<p>6</p>}} > However, subtraction doesn't work: > {noformat} > ## @noparams > #set ($n = 5) > #set ($m = $n-1) > <p>$m</p> > {noformat} > Output: {{<p>$m</p>}} > From [SO Q&A > #15448108|http://stackoverflow.com/questions/15448108/subtraction-is-not-working-with-velocity-template], > it appears that this behavior is due to the parser treating the > hyphen/dash/minus-sign as part of the identifier, but certainly an exception > should be made for when the "identifier" ends with only digits and/or hyphens. > Another case: > {noformat} > ## @noparams > #set ($n = 5) > #set ($m = $n- 1) > <p>$m</p> > {noformat} > In this case we get an all too familiar {{ParseErrorException}}: > {noformat} > org.apache.velocity.exception.ParseErrorException: Encountered "1" at > getRenderedContent[line 4, column 16] > Was expecting one of: > <RPAREN> ... > "-" ... > "+" ... > "*" ... > "/" ... > "%" ... > <LOGICAL_AND> ... > <LOGICAL_OR> ... > <LOGICAL_LT> ... > <LOGICAL_LE> ... > <LOGICAL_GT> ... > <LOGICAL_GE> ... > <LOGICAL_EQUALS> ... > <LOGICAL_NOT_EQUALS> ... > at > org.apache.velocity.runtime.RuntimeInstance.evaluate(RuntimeInstance.java:1202) > at > org.apache.velocity.runtime.RuntimeInstance.evaluate(RuntimeInstance.java:1164) > at > org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:219) > at > com.atlassian.confluence.util.velocity.VelocityUtils.writeRenderedContent(VelocityUtils.java:148) > at > com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:130) > at > com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:117) > at > com.atlassian.confluence.util.velocity.VelocityUtils.getRenderedContent(VelocityUtils.java:113) > at > com.atlassian.confluence.macro.GenericVelocityMacro.execute(GenericVelocityMacro.java:101) > ~~~snipped~~~ > {noformat} > This bug is related to (or possibly the same as) [bug > 873|http://issues.apache.org/jira/browse/VELOCITY-873]. -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@velocity.apache.org For additional commands, e-mail: dev-h...@velocity.apache.org