[
https://issues.apache.org/jira/browse/GROOVY-9374?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17029257#comment-17029257
]
Eric Milles commented on GROOVY-9374:
-------------------------------------
Fix for GROOVY-9370 looks to have fixed this test case as well.
> Type-inference fails for tap on inner classes with type checking
> ----------------------------------------------------------------
>
> Key: GROOVY-9374
> URL: https://issues.apache.org/jira/browse/GROOVY-9374
> Project: Groovy
> Issue Type: Bug
> Affects Versions: 2.5.9
> Environment: Groovy 2.5.9. on Zulu JDK 11.0.3; Linux
> Reporter: Jan Hackel
> Priority: Major
>
> 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.
> {code:groovy}
> 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
> }
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)