Tests for Nested function                vim: set ft=vim :

STARTTEST
:so small.vim
:fu! NestedFunc()
:  fu! Func1()
:    $put ='Func1'
:  endfunction
:  call Func1()
:  fu! s:func2()
:    $put ='s:func2'
:  endfunction
:  call s:func2()
:  fu! s:_func3()
:    $put ='s:_func3'
:  endfunction
:  call s:_func3()
:  let fn = 'Func4'
:  fu! {fn}()
:    $put ='Func4'
:  endfunction
:  call {fn}()
:  let fn = 'func5'
:  fu! s:{fn}()
:    $put ='s:func5'
:  endfunction
:  call s:{fn}()
:endfunction
:call NestedFunc()
:/^result:/,$w! test.out
:qa!
ENDTEST

result:
