The local keyword is very widely supported and used
in tests in coreutils and grep at least.  Therefore
restrict to testing with shells that support it.
This mainly excludes /bin/sh on Solaris.
Note standard ksh also doesn't support this keyword,
but that wasn't in the list of considered shells anyway.
For discussion on adding 'local' to POSIX, see:
http://thread.gmane.org/gmane.linux.debian.devel.bugs.general/122267/focus=3271

* tests/init.sh (gl_shell_test_script_): Add a test for 'local'.
---
 ChangeLog     | 9 +++++++++
 tests/init.sh | 1 +
 2 files changed, 10 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index c3b45f4..03ffdac 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2015-07-03  P??draig Brady  <[email protected]>
+
+       tests: restrict shells to those that support 'local'
+       The local keyword is very widely supported and used
+       in tests in coreutils and grep at least.  Therefore
+       restrict to testing with shells that support it.
+       This mainly excludes /bin/sh on Solaris.
+       * tests/init.sh (gl_shell_test_script_): Add a test for 'local'.
+
 2015-07-03  Seiya Kawashima <[email protected]>  (tiny change)
        and Daiki Ueno  <[email protected]>
 
diff --git a/tests/init.sh b/tests/init.sh
index 9f403c5..c4dfadd 100644
--- a/tests/init.sh
+++ b/tests/init.sh
@@ -150,6 +150,7 @@ fi
 #  ? - not ok
 gl_shell_test_script_='
 test $(echo y) = y || exit 1
+f() { local v=1; }; f || exit 1
 score_=10
 if test "$VERBOSE" = yes; then
   test -n "$( (exec 3>&1; set -x; P=1 true 2>&3) 2> /dev/null)" && score_=9
-- 
2.4.1


Reply via email to