On Sun, 9 Oct 2022 01:43:26 GMT, Kim Barrett <kbarr...@openjdk.org> wrote:
>> After [JDK-8294314](https://bugs.openjdk.org/browse/JDK-8294314), we would >> have signals_posix.cpp excluded with cast-function-type warning: > > test/hotspot/gtest/runtime/test_signals.cpp line 49: > >> 47: static void check_handlers() { >> 48: struct sigaction act, old_SIGFPE_act, old_SIGILL_act; >> 49: act.sa_handler = CAST_FROM_FN_PTR(sa_handler_t, sig_handler); > > This is similarly wrong code that should be fixed instead of doing weird > casting dances. The problem here is that sig_handler has the wrong > signature. It should be just `void sig_handler(int)`. Fix that and not > casts needed. This one is even worse than the other. Here we're installing a handler function taking 3 arguments in such a way that it will only be called with one. Weee! ------------- PR: https://git.openjdk.org/jdk/pull/10494