On Fri, 14 Mar 2003 01:07:56 CST, "Craig A. Berry" wrote:
>You may be right, but after an hour or two I gave up trying to figure
>out what the comments in config_h.SH and the docs in Porting/Glossary
>were trying to tell me and went with what I thought Configure was
>actually doing. One of the confusing things is that the SIG_NUM
>macro in config_h.SH derives from the sig_num_init variable in
>config.sh, not from sig_num. So when the comments in config_h.SH say
>that SIG_NUM should be comma-separated, that means
>$Config{sig_num_init} should be comma-separated, but says nothing at
>all about $Config{sig_num}. $Config{sig_num} and
>$Config{sig_num_init} are apparently two different views of the same
>data, the former to be viewed from Perl, and the latter for
>constructing the SIG_NUM macro in config.h for C and XS.
Porting/Glossary is quite clear, IMO:
:sig_num (sig_name.U):
: This variable holds the signal numbers, space separated. A ZERO is
: prepended to the list (corresponding to the fake SIGZERO), and
: the list is terminated with a 0. Those numbers correspond to
: the value of the signal listed in the same place within the
: sig_name list.
:
:sig_num_init (sig_name.U):
: This variable holds the signal numbers, enclosed in double quotes and
: separated by commas, suitable for use in the SIG_NUM definition
: below. A "ZERO" is prepended to the list, and the list is
: terminated with a plain 0.
:
:sig_size (sig_name.U):
: This variable contains the number of elements of the sig_name
: and sig_num arrays, excluding the final NULL entry.
Note that both sig_num and sig_num_init have the "terminated with a 0".
The sig_size definition clearly says "excluding the final NULL", so
I don't think there is any ambiguity here: split(' ', $sig_num)
should yield $sig_size+1 elements according the above, but the test
wasn't doing that before change#18967.
Sarathy
[EMAIL PROTECTED]