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 gsar@ActiveState.com