You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Paul King (Jira)" <ji...@apache.org> on 2020/03/09 03:06:01 UTC
[jira] [Closed] (GROOVY-9427) Regression in GString handling
[ https://issues.apache.org/jira/browse/GROOVY-9427?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul King closed GROOVY-9427.
-----------------------------
> Regression in GString handling
> ------------------------------
>
> Key: GROOVY-9427
> URL: https://issues.apache.org/jira/browse/GROOVY-9427
> Project: Groovy
> Issue Type: Bug
> Components: parser-antlr4
> Affects Versions: 3.0.1
> Reporter: Paul King
> Assignee: Daniel Sun
> Priority: Major
> Fix For: 4.0.0-alpha-1, 3.0.2
>
>
> Seems like a regression in GString placeholder parsing:
> Groovy 2.5.9: executing {color:#4c9aff}{{String s}}{color} in groovyConsole gives => null
> Groovy 3.0.1: executing {color:#4c9aff}{{String s}}{color} in groovyConsole gives => null
> In both cases it is a declaration statement, type String, name s (all good so far)
> Trying a GString containing the same expression yields:
> Groovy 2.5.9: executing {color:#4c9aff}{{"${String s}"}}{color} in groovyConsole gives => null
> Groovy 3.0.1: executing {color:#4c9aff}{{"${String s}"}}{color} in groovyConsole gives => {color:#de350b}groovy.lang.MissingPropertyException: No such property: s for class{color}
> In 2.5.9, we have a GString with value being a closure exp containing the decl exp as per previous example
> In 3.0.1, we have a GString with value being a method call exp with name 'java.lang.String' and arg 's'
--
This message was sent by Atlassian Jira
(v8.3.4#803005)