summaryrefslogtreecommitdiff
path: root/tools/regression/bin/sh
diff options
context:
space:
mode:
authorJilles Tjoelker <jilles@FreeBSD.org>2013-06-15 22:22:03 +0000
committerJilles Tjoelker <jilles@FreeBSD.org>2013-06-15 22:22:03 +0000
commit7a3000699c33eb39af71e70e92783c6774a1e882 (patch)
tree692c715263907572754c229742263753675a7eac /tools/regression/bin/sh
parent87f02f6f898f3f283e0a8fbcfd8749579d4034ce (diff)
Notes
Diffstat (limited to 'tools/regression/bin/sh')
-rw-r--r--tools/regression/bin/sh/builtins/local2.017
-rw-r--r--tools/regression/bin/sh/builtins/local3.026
2 files changed, 43 insertions, 0 deletions
diff --git a/tools/regression/bin/sh/builtins/local2.0 b/tools/regression/bin/sh/builtins/local2.0
new file mode 100644
index 0000000000000..cc8c10f406185
--- /dev/null
+++ b/tools/regression/bin/sh/builtins/local2.0
@@ -0,0 +1,17 @@
+# $FreeBSD$
+
+f() {
+ local -
+ set -a
+ case $- in
+ *a*) : ;;
+ *) echo In-function \$- bad
+ esac
+}
+case $- in
+*a*) echo Initial \$- bad
+esac
+f
+case $- in
+*a*) echo Final \$- bad
+esac
diff --git a/tools/regression/bin/sh/builtins/local3.0 b/tools/regression/bin/sh/builtins/local3.0
new file mode 100644
index 0000000000000..39ee370099e76
--- /dev/null
+++ b/tools/regression/bin/sh/builtins/local3.0
@@ -0,0 +1,26 @@
+# $FreeBSD$
+
+f() {
+ local "$@"
+ set -a
+ x=7
+ case $- in
+ *a*) : ;;
+ *) echo In-function \$- bad
+ esac
+ [ "$x" = 7 ] || echo In-function \$x bad
+}
+x=1
+case $- in
+*a*) echo Initial \$- bad
+esac
+f x -
+case $- in
+*a*) echo Intermediate \$- bad
+esac
+[ "$x" = 1 ] || echo Intermediate \$x bad
+f - x
+case $- in
+*a*) echo Final \$- bad
+esac
+[ "$x" = 1 ] || echo Final \$x bad