Integrated: 7903656: Variadic invoker class names are not mangled
Maurizio Cimadamore
mcimadamore at openjdk.org
Fri Feb 9 14:27:10 UTC 2024
On Fri, 9 Feb 2024 08:51:39 GMT, Maurizio Cimadamore <mcimadamore at openjdk.org> wrote:
> This PR fixes an issue with the variadic invoker nested class names that are not mangled correctly. This might create issues for case-insensitive file systems.
>
> While working on this, I noticed also that the current test we have for variadic classes (TestPrintf) was not executing as expected, because of a typo in a data provider. After fixing the test code, the test started to fail.
>
> One of the test cases was expecting an `IllegalArgumentException` when passing an int value to a double variadic parameter. But, as we use a method handle argument spreader, no exception is throw, and the value is instead silently converted. I tweaked the test a bit, to create a situation where no conversion is possible, and I noticed that the call failed with `ClassCastException`, but that exception is not handled by the variadic invoker code, so I fixed that as well.
This pull request has now been integrated.
Changeset: 41b3ab6c
Author: Maurizio Cimadamore <mcimadamore at openjdk.org>
URL: https://git.openjdk.org/jextract/commit/41b3ab6c0a9ec3dd49ef870ead346573c1408ad7
Stats: 69 lines in 4 files changed: 55 ins; 3 del; 11 mod
7903656: Variadic invoker class names are not mangled
Reviewed-by: jvernee
-------------
PR: https://git.openjdk.org/jextract/pull/203
More information about the jextract-dev
mailing list