The compiler outputs 21 warnings about sigset() in os_unix.c.
Below is one of them.
os_unix.c: In function 'sig_winch': os_unix.c:872:5: warning: 'sigset' is deprecated: Use the signal and sigprocmask functions instead [-Wdeprecated-declarations] 872 | signal(SIGWINCH, (void (*)(int))sig_winch); | ^~~~~~ In file included from /usr/include/x86_64-linux-gnu/sys/param.h:28, from os_unix.h:60, from vim.h:244, from os_unix.c:21: /usr/include/signal.h:367:23: note: declared here 367 | extern __sighandler_t sigset (int __sig, __sighandler_t __disp) __THROW | ^~~~~~
$ cat /etc/os-release | grep "VERSION="
VERSION="22.04.2 LTS (Jammy Jellyfish)"
$ gcc --version
gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
$ ldd --version
ldd (Ubuntu GLIBC 2.35-0ubuntu3.1) 2.35
[os_unixx.h: L16]
#if defined(HAVE_SIGSET) && !defined(signal) # define signal sigset #endif
signal is replaced with sigset here.
!defined(signal) is not right. This does not determine whether there is a signal() function or not.sigset() is obsolete than signal().sigset().Ubuntu Manpage:
sigset(3)
This interface is made obsolete by sigsuspend(2) and sigaction(2).
WARNING: the behavior of signal() varies across UNIX versions, and has also varied historically across different versions of Linux. Avoid its use: use sigaction(2) instead. See Portability below.
Archlinux Manpage:
sigset(3)
These functions are provided in glibc as a compatibility interface for programs that make use of the historical System V signal API. This API is obsolete: new applications should use the POSIX signal API (sigaction(2), sigprocmask(2), etc.)
WARNING: the behavior of signal() varies across UNIX versions, and has also varied historically across different versions of Linux. Avoid its use: use sigaction(2) instead. See Portability below.
In this PR, I just stopped using sigset().
The next step is to replace signal() with sigaction(), I think. (Wrapping it with mch_signal()?)
--
Best regards,
Hirohito Higashi (h_east)
https://github.com/vim/vim/pull/12313
(5 files)
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
Merging #12313 (c9ec82a) into master (971cd2b) will decrease coverage by
3.89%.
The diff coverage isn/a.
@@ Coverage Diff @@ ## master #12313 +/- ## ========================================== - Coverage 82.04% 78.16% -3.89% ========================================== Files 160 150 -10 Lines 193389 151372 -42017 Branches 43419 39047 -4372 ========================================== - Hits 158675 118317 -40358 + Misses 21837 20816 -1021 + Partials 12877 12239 -638
| Flag | Coverage Δ | |
|---|---|---|
| huge-clang-none | ? |
|
| linux | ? |
|
| mingw-x64-HUGE | 76.57% <ø> (+<0.01%) |
⬆️ |
| mingw-x86-HUGE | 77.03% <ø> (-0.01%) |
⬇️ |
| windows | 78.16% <ø> (-0.01%) |
⬇️ |
Flags with carried forward coverage won't be shown. Click here to find out more.
see 150 files with indirect coverage changes
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
@h-east pushed 2 commits.
—
View it on GitHub or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
@brammool
Thanks for the reply. I understand.
It seems that test_suspend is failing in some cases on Linux as well.
it's difficult... Closing.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
Closed #12313.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()