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

Paul King commented on GROOVY-8539:
-----------------------------------

Groovy is like Java and C (but not Ruby) in that it doesn't have a &&= 
operator. So the alternative format is {{b[0] = b[0] & false}} but agreed the 
binary compound-assignment operators should work and currently don't.

> Groovy fails to compile assignment operators on boolean array
> -------------------------------------------------------------
>
>                 Key: GROOVY-8539
>                 URL: https://issues.apache.org/jira/browse/GROOVY-8539
>             Project: Groovy
>          Issue Type: Bug
>          Components: class generator
>    Affects Versions: 3.0.0-alpha-1, 2.4.15
>            Reporter: Tony Yoshicedo
>            Priority: Major
>
> Groovy fails to compile:
> boolean[] b = [true]; b[0] &= false;
> with an error:
> Caught: BUG! exception in phase 'class generation' in source unit 
> 'script_from_command_line' should not reach here
> BUG! exception in phase 'class generation' in source unit 
> 'script_from_command_line' should not reach here
> when running:
> groovy -e "boolean[] b = [true]; b[0] &= false;"
> Alternative formats work fine, such as:
> groovy -e "boolean[] b = [true]; b[0] = false && b[0];"
> Similarly affects |= and ^= operators.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to