You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Christopher Smith (JIRA)" <ji...@apache.org> on 2015/06/02 21:17:49 UTC

[jira] [Created] (GROOVY-7449) power operator needs specific typing for result

Christopher Smith created GROOVY-7449:
-----------------------------------------

             Summary: power operator needs specific typing for result
                 Key: GROOVY-7449
                 URL: https://issues.apache.org/jira/browse/GROOVY-7449
             Project: Groovy
          Issue Type: Bug
          Components: Compiler
    Affects Versions: 2.4.3
            Reporter: Christopher Smith
            Priority: Minor


I wanted to use the power operator to set a static constant field:

{code}
public static final int DIGITS_IN_CODE = 4

static final int mod = 10 ** DIGITS_IN_CODE
{code}

This results in a compile-time exception when used with {{@CompileStatic}}:

{code}
Groovy:[Static type checking] - Cannot assign value of type java.lang.Number to variable of type int
{code}

Replacing the symbolic constant with just {{10 ** 4}} produces the same bug. It appears that power expressions are not getting resolved until runtime even if they're compile-time constant expressions.



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