Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.5.9
-
None
-
None
-
Groovy 2.5.9. on Zulu JDK 11.0.3; Linux
Description
The following code will not compile with Groovy 2.5.9. It produces an error "[Static type checking] - Cannot assign value of type java.lang.Object to variable of type java.time.LocalDate". Same thing happens for instance fields.
A workaround is to qualify the source field either by this or by class name.
import groovy.transform.CompileStatic import java.time.LocalDate @CompileStatic class TapTypeChecking { private static final LocalDate DATE = LocalDate.of(2020, 2, 1) static Inner inner() { return new Inner().tap { someDate = DATE } } static class Inner { LocalDate someDate } }