The javadoc for `Linker` states that some operations throw `UnsupportedOperationException` when called on an unsupported platform. These operations are:
* `Linker::nativeLinker` * `VaList::empty` * `VaList::make` * `VaList::ofAddress` While the code throws an UOE as required, since the exception is thrown in a static initialized, it gets wrapped in an `ExceptionInInitializerError`. The solution is to set the `CABI` value to `null` if the platform is unknown. Then, when clients call the `CABI.current()` method, we can throw at that point, which will result in the behavior requested by the API spec. ------------- Commit messages: - Add test - Initial push Changes: https://git.openjdk.org/jdk19/pull/150/files Webrev: https://webrevs.openjdk.org/?repo=jdk19&pr=150&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8290455 Stats: 89 lines in 3 files changed: 67 ins; 7 del; 15 mod Patch: https://git.openjdk.org/jdk19/pull/150.diff Fetch: git fetch https://git.openjdk.org/jdk19 pull/150/head:pull/150 PR: https://git.openjdk.org/jdk19/pull/150