[
https://issues.apache.org/jira/browse/GROOVY-12305?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18108996#comment-18108996
]
ASF GitHub Bot commented on GROOVY-12305:
-----------------------------------------
testlens-app[bot] commented on PR #2839:
URL: https://github.com/apache/groovy/pull/2839#issuecomment-5446142257
## ✅ All tests passed ✅
🏷️ Commit: 30e79255c4228d977cfd0e5e9bb329a7d970f996
▶️ Tests: 113292 executed
⚪️ Checks: 31/31 completed
---
_Learn more about TestLens at
[testlens.app/docs](https://testlens.app/docs/features/pr-comment/)._
> STC vs static compile: type-coercion in ternary expression is not handled
> properly in static compilation
> --------------------------------------------------------------------------------------------------------
>
> Key: GROOVY-12305
> URL: https://issues.apache.org/jira/browse/GROOVY-12305
> Project: Groovy
> Issue Type: Bug
> Affects Versions: 6.0.0-alpha-1, 5.0.3, 4.0.31
> Reporter: Björn Kautler
> Priority: Major
>
> This compiles and runs fine, printing {{{}c{}}}:
> {code:java}
> @groovy.transform.TypeChecked
> class Foo {
> def foo() {
> Map foo = [a:[b:'c']] as Map
> println(foo.a instanceof Map ? foo.a.b : foo.a)
> }
> }
> new Foo().foo(){code}
> If you swap {{TypeChecked}} for {{{}CompileStatic{}}}, it fails to compile at
> class generation phase, complaining that "Access to java.lang.Object#b is
> forbidden".
--
This message was sent by Atlassian Jira
(v8.20.10#820010)