Uploaded image for project: 'Groovy'
  1. Groovy
  2. GROOVY-11329

Class using trait and @Immutable and allProperties gives BUG! exception in phase 'canonicalization' NPE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 5.0.0-alpha-7, 4.0.20
    • None
    • None

    Description

      import groovy.transform.Immutable
      
      trait T {
          String foo
      }
      
      @Immutable(allProperties=true)
      class C implements T {
          String bar
      }
      
      assert new C('bar', 'foo').toString() == 'C(bar, foo)'
      

      Gives:

      BUG! exception in phase 'canonicalization' in source unit 'ConsoleScript0' unexpected NullPointerException
      ...
      Caused by: java.lang.NullPointerException
      	at groovy.transform.options.ImmutablePropertyHandler.assignFieldWithDefault(ImmutablePropertyHandler.java:237)
      	at groovy.transform.options.ImmutablePropertyHandler.createConstructorStatementDefault(ImmutablePropertyHandler.java:225)
      

      Attachments

        Activity

          People

            paulk Paul King
            paulk Paul King
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: