[ 
https://issues.apache.org/jira/browse/GROOVY-8188?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Abbas Gadhia updated GROOVY-8188:
---------------------------------
    Description: 
I'm trying to extend from an abstract class and override one of its abstract 
methods. Another "final" concrete method of the same name exists in the 
abstract class.

When I compile, it complains that i cannot override the method marked as final, 
however i've only overriden the abstract method, and not the "final" one.

This issue is sporadic. The error pops up and goes after several retries

I've attached a simple project that reproduces this issue. The error may or may 
not happen the first time. Tweaking the code here and there, gets the issue to 
pop up

Here's a sample of the error message
bq. Error:Groovyc: You are not allowed to override the final method 
copy(org.apache.calcite.plan.RelTraitSet -> 
org.apache.calcite.plan.RelTraitSet,java.util.List -> java.util.List <E extends 
java.lang.Object>) from class 'org.apache.calcite.rel.core.Join'.

  was:
I'm trying to extend from an abstract class and override one of its abstract 
methods. Another "final" concrete method of the same name exists in the 
abstract class.

When I compile, it complains that i cannot override the method marked as final, 
however i've only overriden the abstract method, and not the "final" one.

This issue is sporadic. The error pops up and goes after several retries

I've attached a simple project that reproduces this issue. The error may or may 
not happen the first time. Tweaking the code here and there, gets the issue to 
pop up


> Unpredictable behavior - Compiler error: groovyc: You are not allowed to 
> override the final method
> --------------------------------------------------------------------------------------------------
>
>                 Key: GROOVY-8188
>                 URL: https://issues.apache.org/jira/browse/GROOVY-8188
>             Project: Groovy
>          Issue Type: Bug
>          Components: Compiler
>    Affects Versions: 2.4.11
>         Environment: Windows
>            Reporter: Abbas Gadhia
>         Attachments: groovyc.7z
>
>
> I'm trying to extend from an abstract class and override one of its abstract 
> methods. Another "final" concrete method of the same name exists in the 
> abstract class.
> When I compile, it complains that i cannot override the method marked as 
> final, however i've only overriden the abstract method, and not the "final" 
> one.
> This issue is sporadic. The error pops up and goes after several retries
> I've attached a simple project that reproduces this issue. The error may or 
> may not happen the first time. Tweaking the code here and there, gets the 
> issue to pop up
> Here's a sample of the error message
> bq. Error:Groovyc: You are not allowed to override the final method 
> copy(org.apache.calcite.plan.RelTraitSet -> 
> org.apache.calcite.plan.RelTraitSet,java.util.List -> java.util.List <E 
> extends java.lang.Object>) from class 'org.apache.calcite.rel.core.Join'.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to