RFR: 8257467: [TESTBUG] -Wdeprecated-declarations is reported at sigset() in exesigtest.c
David Holmes
dholmes at openjdk.java.net
Tue Dec 1 04:57:56 UTC 2020
On Tue, 1 Dec 2020 01:38:44 GMT, Yasumasa Suenaga <ysuenaga at openjdk.org> wrote:
> `sigset()` is deprecated, and `__attribute_deprecated_msg__` has been [set to the declaration in glibc](https://sourceware.org/git/?p=glibc.git;a=commit;f=signal/signal.h;h=02802fafcf6e11ea3f998f685035ffe568dfddeb)
>
> We can see the warning on `make test-image` as below:
>
> * Fedora 33 x86_64
> * gcc: gcc-10.2.1-6.fc33.x86_64
> * glibc: glibc-2.32-2.fc33.x86_64
>
>
>
> 245 | sigset(signal_num, handler);
> | ^~~~~~
> In file included from /home/ysuenaga/github-forked/jdk/test/hotspot/jtreg/runtime/signal/exesigtest.c:25:
>
> 353 | extern __sighandler_t sigset (int __sig, __sighandler_t __disp) __THROW
> | ^~~~~~
> cc1: all warnings being treated as errors
> gmake[3]: *** [test/JtregNativeHotspot.gmk:1525: /home/ysuenaga/github-forked/jdk/build/linux-x86_64-server-fastdebug/support/test/hotspot/jtreg/native/support/exesigtest/exesigtest.o] Error 1
> gmake[3]: *** Waiting for unfinished jobs....
> gmake[2]: *** [make/Main.gmk:612: build-test-hotspot-jtreg-native] Error 2
I would suggest we just delete the sigset usage as it is obsolete. The whole point of this test is to test signal chaining for the VM and sigset is undefined for a multi-threaded process (POSIX spec.) The use of sigaction suffices IMO.
Thanks,
David
-------------
Changes requested by dholmes (Reviewer).
PR: https://git.openjdk.java.net/jdk/pull/1529
More information about the hotspot-runtime-dev
mailing list