summaryrefslogtreecommitdiff
path: root/Test/D04parameter.ztst
diff options
context:
space:
mode:
Diffstat (limited to 'Test/D04parameter.ztst')
-rw-r--r--Test/D04parameter.ztst26
1 files changed, 14 insertions, 12 deletions
diff --git a/Test/D04parameter.ztst b/Test/D04parameter.ztst
index 75ace5a9b..e779aaba8 100644
--- a/Test/D04parameter.ztst
+++ b/Test/D04parameter.ztst
@@ -1718,24 +1718,26 @@
>2
>2
+ # SHLVL is incremented twice and decremented once in between.
SHLVL=1
- $ZTST_testdir/../Src/zsh -fc 'sh -c "echo \$SHLVL"'
- $ZTST_testdir/../Src/zsh -fc '(sh -c "echo \$SHLVL")'
- $ZTST_testdir/../Src/zsh -fc '( (sh -c "echo \$SHLVL"))'
+ $ZTST_testdir/../Src/zsh -fc $ZTST_testdir/../Src/zsh' -fc "echo \$SHLVL"'
+ $ZTST_testdir/../Src/zsh -fc '('$ZTST_testdir/../Src/zsh' -fc "echo \$SHLVL")'
+ $ZTST_testdir/../Src/zsh -fc '( ('$ZTST_testdir/../Src/zsh' -fc "echo \$SHLVL"))'
0:SHLVL decremented upon implicit exec optimisation
->1
->1
->1
-
- SHLVL=1
- $ZTST_testdir/../Src/zsh -fc '(sh -c "echo \$SHLVL"); exit'
- $ZTST_testdir/../Src/zsh -fc '(exec sh -c "echo \$SHLVL"); exit'
- $ZTST_testdir/../Src/zsh -fc '( (sh -c "echo \$SHLVL"); exit)'
-0:SHLVL not decremented upon exec in subshells
>2
>2
>2
+ # SHLVL is incremented twice with no decrement in between.
+ SHLVL=1
+ $ZTST_testdir/../Src/zsh -fc '('$ZTST_testdir/../Src/zsh' -fc "echo \$SHLVL"); exit'
+ $ZTST_testdir/../Src/zsh -fc '(exec '$ZTST_testdir/../Src/zsh' -fc "echo \$SHLVL"); exit'
+ $ZTST_testdir/../Src/zsh -fc '( ('$ZTST_testdir/../Src/zsh' -fc "echo \$SHLVL"); exit)'
+0:SHLVL not decremented upon exec in subshells
+>3
+>3
+>3
+
# The following tests the return behaviour of parsestr/parsestrnoerr
alias param-test-alias='print $'\''\x45xpanded in substitution'\'
param='$(param-test-alias)'