Commit 416796f
committed
Preserve casts pinning generic-method return type in lambdas
Without the cast, calls like `<T extends SourceFile> T withSourcePath(Path)`
inside a lambda lose `T` to its bound during outer inference (e.g.
`Optional.map(...).ifPresent(generated::add)`), causing compilation errors.
Fixes #8711 parent 9f02852 commit 416796f
2 files changed
Lines changed: 44 additions & 0 deletions
File tree
- src
- main/java/org/openrewrite/staticanalysis
- test/java/org/openrewrite/staticanalysis
Lines changed: 17 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
131 | 131 | | |
132 | 132 | | |
133 | 133 | | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
134 | 151 | | |
135 | 152 | | |
136 | 153 | | |
| |||
Lines changed: 27 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
612 | 612 | | |
613 | 613 | | |
614 | 614 | | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
615 | 642 | | |
616 | 643 | | |
617 | 644 | | |
| |||
0 commit comments