[ https://issues.apache.org/jira/browse/GROOVY-11241?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eric Milles resolved GROOVY-11241. ---------------------------------- Fix Version/s: 5.0.0-alpha-4 Resolution: Fixed https://github.com/apache/groovy/commit/5ec0d02ac19b44cc62bf02a4804cb0130276bdd9 > Regression in STC generics solution > ----------------------------------- > > Key: GROOVY-11241 > URL: https://issues.apache.org/jira/browse/GROOVY-11241 > Project: Groovy > Issue Type: Bug > Components: Static Type Checker > Affects Versions: 4.0.16 > Reporter: Christopher Smith > Assignee: Eric Milles > Priority: Major > Fix For: 5.0.0-alpha-4 > > > The following code, which works in 4.0.14 and below, incorrectly produces an > error in 4.0.16. > Expected result: {{mapTry(Option::get)}} unwraps the {{Try<Option<Integer>>}} > into a {{Try<Integer>}} > https://www.javadoc.io/doc/io.vavr/vavr/0.10.4/io/vavr/control/Try.html > Actual: > {code} > [Static type checking] - Incompatible generic argument types. Cannot assign > io.vavr.control.Try<io.vavr.control.Option<java.lang.Integer>> to: > io.vavr.control.Try<java.lang.Integer> > {code} > {code} > import groovy.transform.CompileStatic > import io.vavr.control.Option > import io.vavr.control.Try > @Grab('io.vavr:vavr:0.10.4') > @CompileStatic > class Repro { > Option<Integer> option() { > Option.of(3) > } > Try<Integer> repro() { > Try.of { option() } > .mapTry(Option::get) > } > } > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)