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

Cédric Champeau commented on GROOVY-7402:
-----------------------------------------

Is is still not recommended to use AST xforms in combination with traits, 
unless they are explicitly listed as compatible (like {{@CompileStatic}}. There 
are several reasons for this, both technical and logical: would an AST xform be 
applied on the trait itself, or on the class which implements the trait? Should 
the annotation still be visible? ... There are lots of unanswered questions 
here which are not so easy to answer.

> Compiler NPE Related To AST Transformations And Traits
> ------------------------------------------------------
>
>                 Key: GROOVY-7402
>                 URL: https://issues.apache.org/jira/browse/GROOVY-7402
>             Project: Groovy
>          Issue Type: Bug
>          Components: Compiler
>    Affects Versions: 2.4.3
>            Reporter: Jeff Scott Brown
>         Attachments: traitannotation.zip
>
>
> Related to https://github.com/grails/grails-core/issues/663.
> The attached traitannotation.zip includes the following:
> {code:title=src/main/groovy/demo/SomeTrait.groovy|borderStyle=solid}
> package demo
> import groovy.transform.*
> @Immutable
> trait SomeTrait {
>     String name
> }
> {code}
> {code:title=src/main/groovy/demo/SomeClass.groovy|borderStyle=solid}
> package demo
> class SomeClass implements SomeTrait {}
> {code}
> Compilation raises an NPE:
> {noformat}
> $ ./gradlew clean cG
> :clean
> :compileJava UP-TO-DATE
> :compileGroovy FAILED
> FAILURE: Build failed with an exception.
> * What went wrong:
> Execution failed for task ':compileGroovy'.
> > BUG! exception in phase 'instruction selection' in source unit 
> > '/Users/jeff/traitannotation/src/main/groovy/demo/SomeTrait.groovy' 
> > unexpected NullpointerException
> * Try:
> Run with --stacktrace option to get the stack trace. Run with --info or 
> --debug option to get more log output.
> BUILD FAILED
> {noformat}



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

Reply via email to