On 07/31/2011 06:13 AM, Julien ÉLIE wrote:
Hi all, Reading a generated "configure" file, I see: # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1)>/dev/null 2>&1&& unset $as_var || : done Wouldn't it mean that all '((' present in the "configure" script, and related to shell commands, should be rewritten to '( ('?
It's not a bug in pdksh - POSIX was recently reworded to allow (( to introduce arithmetic parsing on any shell that wants to provide it as an extension. So yes, all instances of needing a double sub-shell MUST separate the two ( to comply with POSIX.
But unless you can point out any other instances of a double sub-shell in configure, I think we're okay on not tripping over this issue any where else.
-- Eric Blake eblake@xxxxxxxxxx +1-801-349-2682 Libvirt virtualization library http://libvirt.org _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx https://lists.gnu.org/mailman/listinfo/autoconf