[ 
https://issues.apache.org/jira/browse/GROOVY-11301?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17818296#comment-17818296
 ] 

Jochen Theodorou edited comment on GROOVY-11301 at 2/18/24 3:02 PM:
--------------------------------------------------------------------

[~theosot] sorry for the delay... the problem is that the stack trace does not 
show anything strange so far.. You are also not compiling as named module, but 
even then they would be in the same module so module access should not matter.  
I think there are currently only two things left. (1) try a newer/different JDK 
version. (2) upload the class files so I can compare it with what I get locally.


was (Author: blackdrag):
[~theosot] sorry for the delay... the problem is that the stack trace does not 
show anything strange so far.. You are also not compiling as named module, but 
even then they would be in the same module so module access should not matter.  
I think there are currently only two things left. (1) try a newer/different JDK 
version. (2) upload the class file so I can compare it with what I get locally.

> References to inaccesible methods with static compilation leads to runtime 
> error
> --------------------------------------------------------------------------------
>
>                 Key: GROOVY-11301
>                 URL: https://issues.apache.org/jira/browse/GROOVY-11301
>             Project: Groovy
>          Issue Type: Bug
>          Components: Static compilation
>            Reporter: Thodoris Sotiropoulos
>            Priority: Minor
>
> I have the following ill-typed program
> {code}
> import java.util.function.Supplier;
> public class Test {
>   static class A {
>     private static String m() { return null; }
>   }
>   public static void main(String[] args) {
>     Supplier<String> x  = A::m;
>   }
> }
> {code}
> h3. Actual behaviour
> The compiler accepts the program, but I receive the following runtime error, 
> because I access a private method.
> {code}
> Exception in thread "main" java.lang.IllegalAccessError: class Test tried to 
> access private method 'java.lang.String Test$A.m()' (Test and Test$A are in 
> unnamed module of loader 'app')
>         at Test.main(groovy51.groovy:9)
> {code}
> h3. Expected behavior
> The program should have been rejected by the compiler.
> Tested against master (commit: 191231a832efd2e2fc49391c01f8d176944d68e3)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to