fatal-signal: Pass the signal number to the action

2019-03-16 Thread Bruno Haible
Some applications of the 'fatal-signal' modules don't need to know the signal when executing the cleanup action. But some do. In my case, I need the cleanup action to print '^C' when the signal is SIGINT. This patch changes the action type to include the signal number as a parameter. The change is

Re: undefined behaviour findings in bitset

2019-03-16 Thread Bruno Haible
Hi Akim, In the first patch: > + for (bitset_windex windex = bitno / BITSET_WORD_BITS; > + (windex - woffset) < EBITSET_ELT_WORDS; windex++) This is C99 syntax. If you don't add 'c99' as a dependency of your module, the module will not compile with GCC versions < 5.1.0 with

fatal-signal: Add function that lists the fatal signals

2019-03-16 Thread Bruno Haible
Some users of the 'fatal-signal' module want to block / unblock not only the fatal signals, but also some other signals. Of course a single sigaction() call is preferred to multiple ones. For this use-case, it makes sense to add an accessor for the list of signals. This accessor returns a list of

Re: undefined behaviour findings in bitset

2019-03-16 Thread Akim Demaille
> commit 4c8a35ed125e1b87a11d6aecd0b7b216384552bb > Author: Akim Demaille > Date: Sat Mar 16 17:36:22 2019 +0100 > >bitset: a bit (...) more tests > >* tests/test-bitset.c (check_attributes): Check zero and ones. > > diff --git a/tests/test-bitset.c b/tests/test-bitset.c > index 032

Re: undefined behaviour findings in bitset

2019-03-16 Thread Akim Demaille
Hi Bruno, > Le 9 mars 2019 à 20:37, Bruno Haible a écrit : > > Hi Akim, > > This one I have not fixed: > > lib/bitset/table.c:784:54: runtime error: shift exponent 87 is too large for > 64-bit type 'long unsigned int' > > To reproduce: Use gcc 8.2.0 and CC="gcc -fsanitize=undefined". Thanks