RFR: 8297733: Refactor Cast binding to enum
Jorn Vernee
jvernee at openjdk.org
Tue Nov 29 13:54:13 UTC 2022
Refactor the cast binding to an enum, which clearly enumerates all supported conversions.
This also fixes a bug where `java/foreign/normalize/TestNormalize` was failing when running in interpreted mode (`-Djdk.internal.foreign.DowncallLinker.USE_SPEC=false`), for conversions from `int` to `byte` because the `explicitCast` method handle that was used only considers the least significant bit, while we want to look at all of the least significant byte.
As mentioned in the JBS issue, doing this will also make it easier going forward to support multiple conversions with the same from and to types, but requiring different semantics.
Testing: jdk_foreign test suite.
-------------
Depends on: https://git.openjdk.org/jdk/pull/11019
Commit messages:
- Refactor cast operator to enum
Changes: https://git.openjdk.org/jdk/pull/11397/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=11397&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8297733
Stats: 82 lines in 2 files changed: 56 ins; 14 del; 12 mod
Patch: https://git.openjdk.org/jdk/pull/11397.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/11397/head:pull/11397
PR: https://git.openjdk.org/jdk/pull/11397
More information about the core-libs-dev
mailing list