You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Daniel Sun (Jira)" <ji...@apache.org> on 2026/05/26 20:19:00 UTC

[jira] [Closed] (GROOVY-12022) deprecate IndyStaticTypesMultiTypeDispatcher

     [ https://issues.apache.org/jira/browse/GROOVY-12022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Sun closed GROOVY-12022.
-------------------------------
    Fix Version/s: 6.0.0-alpha-2
       Resolution: Fixed

> deprecate IndyStaticTypesMultiTypeDispatcher
> --------------------------------------------
>
>                 Key: GROOVY-12022
>                 URL: https://issues.apache.org/jira/browse/GROOVY-12022
>             Project: Groovy
>          Issue Type: Bug
>            Reporter: Jochen Theodorou
>            Assignee: Jochen Theodorou
>            Priority: Minor
>             Fix For: 6.0.0-alpha-2
>
>
> In IndyStaticTypesMultiTypeDispatcher.java (lines 95-99), the get and set names are swapped for float and boolean arrays (using name "get" for a descriptor that returns void and takes a value).
>  The code works because the IndyInterface.staticArrayAccess bootstrap method ignores the name parameter and uses the parameter count of the MethodType instead.
> But in general I see no reason to use invokedynamic here. The non-indy code uses BytecodeInterface8 to access the specific code paths for array access and should be faster than the indy version since it is a "simple" static method invocation. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)