Details
Description
First time submitter to this JIRA so let me know if I've specified anything incorrectly. I just upgraded from 2.4.4 to 2.4.6 and now declaring an enum constructor accepting a value as follows:
enum UsState { ID('Idaho'), IL('Illinois'), IN('Indiana'), UsState( String value ) { this.value = value } private final String value String toString() { return value } } println UsState.ID //Idaho
throws the following compile error:
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: C:\svn_qa\jenkins_trunk\scripts\UsStates.groovy: 7: unexpected token: this @ line 7, column 29. UsState( String value ) { this.value = value } ^ 1 error
No such error occurred in 2.4.4, nor does it happen in 2.4.5. Here are a few contrasting things that do seem to work in 2.4.6:
enum UsState { ID, IL, IN, } println UsState.ID //ID
class UsState { UsState( String value ) { this.value = value } private final String value String toString() { return value } } final idaho = new UsState('Idaho') println idaho //Idaho
Though this seems higher priority than Minor, I can work around it by simply downgrading to 2.4.5. I wish there was a Medium priority.
Attachments
Issue Links
- is cloned by
-
GROOVY-7778 CLONE - Enum constructor with value throws "unexpected token" error
- Closed