view src/testdir/test_nested_function.in @ 9735:8037eb704e93 v7.4.2143

commit https://github.com/vim/vim/commit/bc7ce675b2d1c9fb58c067eff3edd59abc30aba4 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Aug 1 22:49:22 2016 +0200 patch 7.4.2143 Problem: A funccal is garbage collected while it can still be used. Solution: Set copyID in all referenced functions. Do not list lambda functions with ":function".
author Christian Brabandt <cb@256bit.org>
date Mon, 01 Aug 2016 23:00:07 +0200
parents 750a6986aa86
children
line wrap: on
line source

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: