| # check invalid options are rejected |
| # bash: in posix mode, aborts if non-interactive; using subshell to avoid that |
| (unset -) |
| echo $? |
| (unset -m a b c) |
| echo $? |
| |
| # check funky usage |
| unset |
| echo $? |
| |
| # check normal usage |
| echo ___ |
| f=f g=g |
| echo $? $f $g |
| unset f |
| echo $? $f $g |
| unset g |
| echo $? $f $g |
| |
| echo ___ |
| f=f g=g |
| echo $? $f $g |
| unset f g |
| echo $? $f $g |
| f=f g=g |
| echo $? $f $g |
| unset -v f g |
| echo $? $f $g |
| |
| # check read only vars |
| echo ___ |
| f=f g=g |
| VAR_RO=1 |
| readonly VAR_RO |
| (unset VAR_RO) |
| echo $? $f $g |
| # not testing "do variables survive error halfway through unset" since unset aborts |
| # unset f VAR_RO g |
| #echo $? $f $g |