RFR: 8317132: Prepare HotSpot for permissive-
Julian Waters
jwaters at openjdk.org
Fri Sep 29 02:21:09 UTC 2023
On Thu, 28 Sep 2023 11:56:57 GMT, Jorn Vernee <jvernee at openjdk.org> wrote:
>> Prepare HotSpot for the permissive- Visual C++ flag, this change contains all of the fixes required for HotSpot to compile under the stricter mode activated when the permissive- flag is passed
>>
>> - Reworks code in topLevelUnhandledExceptionFilter for os_windows.cpp to avoid goto jumping across uninitialized locals
>> - Adds a CAST_FROM_FN_PTR cast to the return value from ::signal to void, as they cannot be implicitly converted
>> - symbolengine.cpp's SimpleBufferWithFallback's templates cannot work with a raw char (Actual fix under discussion)
>> - Removed a throw() specification from a mismatched definition in allocation.cpp
>
> src/hotspot/os/windows/os_windows.cpp line 2912:
>
>> 2910: #if defined(USE_VECTORED_EXCEPTION_HANDLING)
>> 2911: LONG WINAPI topLevelUnhandledExceptionFilter(struct _EXCEPTION_POINTERS* exceptionInfo) {
>> 2912: if (InterceptOSException) {
>
> I may be missing something, but why not just use `if (!InterceptOSException)` here and get rid of the `goto`?
This decision was based on a review comment in https://github.com/openjdk/jdk/pull/15096, which preferred keeping InterceptOSException without the negation. Perhaps I'll wait until Thomas sees this Pull Request
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/15955#discussion_r1340822520
More information about the hotspot-runtime-dev
mailing list