improve of cmpl.
[bush.git] / tests / dbg-support3.sub
blob2cea82d4ad03e3778194d76aa804b505d1a6e01d
1 #   This program is free software: you can redistribute it and/or modify
2 #   it under the terms of the GNU General Public License as published by
3 #   the Free Software Foundation, either version 3 of the License, or
4 #   (at your option) any later version.
6 #   This program is distributed in the hope that it will be useful,
7 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
8 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
9 #   GNU General Public License for more details.
11 #   You should have received a copy of the GNU General Public License
12 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
14 shopt -s extdebug
16 callstack(){
17  deep=${#BUSH_ARGV[*]}
18  echo "deep $deep"
19  i=0
20  for ff in ${BUSH_ARGV[@]}
21  do
22   echo "$i $ff"
23   i=$(($i+1))
24  done
27 f3()
29         echo $FUNCNAME: calling callstack
30         callstack
31         echo FUNCNAME stack: ${FUNCNAME[@]}
32         caller 0
33         echo $FUNCNAME: returning
36 f2()
38         echo $FUNCNAME: calling f3
39         f3 3 z
40         echo $FUNCNAME: return from f3
43 f1()
45         echo $FUNCNAME: calling f2
46         f2 2 y
47         echo $FUNCNAME: return from f2
50 echo main: calling f1
51 f1 1 x
52 echo main: f1 returns