Shil Sinha created GROOVY-7859:
----------------------------------

             Summary: Method pointers to non-static methods from a class 
objects should fail STC
                 Key: GROOVY-7859
                 URL: https://issues.apache.org/jira/browse/GROOVY-7859
             Project: Groovy
          Issue Type: Bug
          Components: Static Type Checker
    Affects Versions: 2.4.7
            Reporter: Shil Sinha


The following currently passes static type checking:
{code}
@groovy.transform.CompileStatic
void test() {
  def x = String.&length
  x()
}
test()
{code}

At runtime, it fails with:

{quote}
java.lang.IllegalArgumentException: object is not an instance of declaring class
{quote}

If {{String.&length}} is replaced with {{String.&size}}, or a pointer to any 
extension method, it still passes STC, but fails with a ClassCastException 
instead.





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to