[ https://issues.apache.org/jira/browse/GROOVY-11144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17836761#comment-17836761 ]
Eric Milles commented on GROOVY-11144: -------------------------------------- What is your expectation here? The closure for with is to satisfy names by delegate first. DataClass has a catch-all for names. You can qualify STR with “owner.” or “this.” or “StaticPropertyIssueTest.” > MissingPropertyEx when accessing private static field in closure of same class > ------------------------------------------------------------------------------ > > Key: GROOVY-11144 > URL: https://issues.apache.org/jira/browse/GROOVY-11144 > Project: Groovy > Issue Type: Bug > Components: groovy-runtime > Affects Versions: 4.0.13 > Environment: Windows 10, Groovy 4.0.13, Java 17.0.8 > Reporter: Andreas Turban > Assignee: Eric Milles > Priority: Major > Fix For: 5.0.0-alpha-1 > > Attachments: Test.groovy > > > When accessing a private static final field from a Closure within the same > class Groovy 4 throws a MissingPropertyException. The code works in Groovy > 2.5.22 & 3.0.18. > The real instance of the object needs to be a subtype of the class containing > the constant. > See attached code to reproduce. > *Expected behavior:* > The code runs without error > *Actual behavior:* > Groovy 4 throws: > {{groovy.lang.MissingPropertyException: No such property: field for class: > FirstEvent}} > {{ at BaseEvent$_init_closure1.doCall(Test.groovy:7)}} > {{ at BaseEvent.init(Test.groovy:7)}} > {{ at Test.run(Test.groovy:15)}} > *Notes:* > Interestingly if you remove the static keyword from {color:#0033b3}private > static final {color}{color:#000000}String {color}{color:#871094}field > {color}= {color:#067d17}"name"{color} > it fails in all three versions 2.5.22, 3.0.18 & 4.0.13 with a > {{{}MissingPropertyException{}}}. > I would expect that the code should also work for these cases. > > The problem came up in a discussion about a Spock issue > [#1544|https://github.com/spockframework/spock/issues/1544]. -- This message was sent by Atlassian Jira (v8.20.10#820010)