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

Eric Milles updated GROOVY-4346:
--------------------------------
    Fix Version/s:     (was: 4.x)

> Set isSynthetic()/setSynthetic() behaviour right for AST nodes
> --------------------------------------------------------------
>
>                 Key: GROOVY-4346
>                 URL: https://issues.apache.org/jira/browse/GROOVY-4346
>             Project: Groovy
>          Issue Type: Bug
>          Components: class generator
>    Affects Versions: 1.8-beta-1
>            Reporter: Roshan Dawrani
>            Priority: Major
>
> Currently there is no relation between the very interdependent properties - 
> {{synthetic of AnnotatedNode}} and {{modifiers of various sub-classes like 
> MethodNode, FieldNode, etc}} - which means that if the developer remembers to 
> call one but forgets another, it leaves the AST in an inconsistent state. It 
> can have synthetic == true but modifiers with SYNTHETIC bit off and vice 
> versa.
> This leads to issues at various places currently because fields, methods, 
> classes that were intended to be synthetic don't necessarily get marked so in 
> the bytecode.
> For the nodes that have modifiers, 
> isSynthetic()/setSynthetic()/setModifiers() should all be in sync - only 
> based on modifiers value behind the scenes.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to