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 2024/11/12 11:41:00 UTC
[jira] [Closed] (GROOVY-9850) STC: add error for write of private or package-private field of super class
[ https://issues.apache.org/jira/browse/GROOVY-9850?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul King closed GROOVY-9850.
-----------------------------
> STC: add error for write of private or package-private field of super class
> ---------------------------------------------------------------------------
>
> Key: GROOVY-9850
> URL: https://issues.apache.org/jira/browse/GROOVY-9850
> Project: Groovy
> Issue Type: Bug
> Reporter: Eric Milles
> Assignee: Eric Milles
> Priority: Minor
> Fix For: 5.0.0-alpha-9, 4.0.22
>
>
> GROOVY-8999, GROOVY-9093, GROOVY-9136, GROOVY-9195, GROOVY-9288, GROOVY-9292, GROOVY-9293, GROOVY-9695 and others cover various scenarios where read access to a field should or should not be allowed. One scenario that is yet uncovered is writing to a private or package-private field from a super class.
> Consider the following:
> {code:groovy}
> package p
> class C {
> private /*or @PackageScope*/ Object field
> }
> {code}
> {code:groovy}
> package q
> class D extends C {
> @groovy.transform.CompileStatic
> void test() {
> field = null // should be error
> }
> }
> {code}
> Also need {{static}}, closure and inner class variants.
> I also think that {{@TypeChecked}} is not producing errors for any field access cases. Not sure if it is desirable to limit the checks to the SC path.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)