Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.1.7, 2.3.0, 2.4.0-rc-1
-
None
Description
The issue is the following. If I declare a variable of a Java primitive type (for example an int) and try to access a static field in a type checked annotated method (such as MAX_VALUE), there is a failure stating '[Static type checking] - No such property: MAX_VALUE for class: int'. An example of this could be:
@groovy.transform.TypeChecked
void runMethod (){
int i = 10
println(i.MAX_VALUE)
}
runMethod()
However, running the same snippet without the annotation works fine. This happens as far as I know with all primitive types.
I don't know if the previous code is correct, given that as a primitive type you don't have static fields, and they only appear in runtime because of autoboxing, but I think there should be a consistency between the two situations.
Furthermore, I think this might be related with issue GROOVY-6349.
I attach some examples to use as test cases.
Attachments
Attachments
Issue Links
- relates to
-
GROOVY-6590 field on primitive not recognized even if existing in wrapper type
- Closed