diff options
author | Xi Ruoyao <xry111@xry111.site> | 2022-09-30 11:36:03 -0400 |
---|---|---|
committer | Zack Weinberg <zackw@panix.com> | 2022-09-30 11:37:13 -0400 |
commit | 412166e185c00d6eacbe67dfcb0326f622ec4020 (patch) | |
tree | d181ae13c201d8eaf825cdb3fb44ca9a0df06ecb | |
parent | 55dfa2377602e743d00b726344422acc3116d859 (diff) | |
download | autoconf-412166e185c00d6eacbe67dfcb0326f622ec4020.tar.gz |
Fix testsuite failures with bash 5.2.
Bash v5.2 includes several new optimizations to the number of
subshells used for various constructs; as a side effect, the value of
SHLVL is less stable than it used to be. Add SHLVL to the list of
built-in shell variables with unstable values, to be ignored when
checking for inappropriate differences to the shell environment
before and after a macro invocation / between two configure runs.
Problem and solution reported by Xi Ruoyao in
https://lists.gnu.org/archive/html/autoconf/2022-09/msg00015.html
Problem also reported by Bruce Dubbs in
https://lists.gnu.org/archive/html/bug-autoconf/2022-09/msg00010.html
* tests/local.at (_AT_CHECK_ENV, AT_CONFIG_CMP): Ignore changes in
value of SHLVL.
Copyright-paperwork-exempt: yes
-rw-r--r-- | tests/local.at | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tests/local.at b/tests/local.at index 193fd118..a9cf4050 100644 --- a/tests/local.at +++ b/tests/local.at @@ -352,7 +352,7 @@ m4_define([AT_CHECK_CONFIGURE], # - AC_SUBST'ed variables # (FIXME: Generate a list of these automatically.) # - _|@|.[*#?$].|argv|ARGC|LINENO|OLDPWD|PIPESTATUS|RANDOM|SECONDS -# |START_TIME|ToD|_AST_FEATURES +# |SHLVL|START_TIME|ToD|_AST_FEATURES # Some variables some shells use and change. # '.[*#?$].' catches '$#' etc. which are displayed like this: # | '!'=18186 @@ -404,7 +404,7 @@ if test -f state-env.before && test -f state-env.after; then [GREP|[EF]GREP|SED], [[_@]|.[*@%:@?$].], [argv|ARGC|LINENO|BASH_ARGC|BASH_ARGV|OLDPWD|PIPESTATUS|RANDOM], - [SECONDS|START_TIME|ToD|_AST_FEATURES]))=' \ + [SECONDS|SHLVL|START_TIME|ToD|_AST_FEATURES]))=' \ $act_file || test $? -eq 1 || echo failed >&2 ) 2>stderr-$act_file | @@ -435,6 +435,7 @@ fi # - PPID [bash, zsh] # - RANDOM [bash, zsh] # - SECONDS [bash, zsh] +# - SHLVL [bash] # - START_TIME [NetBSD sh] # - ToD [NetBSD sh] # - '$' [zsh] @@ -483,6 +484,7 @@ do /^PPID=/ d /^RANDOM=/ d /^SECONDS=/ d + /^SHLVL=/ d /^START_TIME=/ d /^ToD=/ d /'\'\\\$\''=/ d |