diff options
author | Bram Moolenaar <Bram@vim.org> | 2023-01-05 13:16:04 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2023-01-05 13:16:04 +0000 |
commit | cf760d50dceb46bd583321c210b88b92360eb959 (patch) | |
tree | 83c8681eebf2582148de2c4e98fc022a4a5b7f0f /src/testdir/test_vim9_class.vim | |
parent | 2468add0b88849997e6349e7a0b997be133c022d (diff) |
patch 9.0.1149: class members may be garbage collectedv9.0.1149
Problem: Class members may be garbage collected.
Solution: Mark class members as being in use.
Diffstat (limited to 'src/testdir/test_vim9_class.vim')
-rw-r--r-- | src/testdir/test_vim9_class.vim | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/testdir/test_vim9_class.vim b/src/testdir/test_vim9_class.vim index a55671bcb6..b98b96f58e 100644 --- a/src/testdir/test_vim9_class.vim +++ b/src/testdir/test_vim9_class.vim @@ -493,6 +493,23 @@ def Test_class_member() v9.CheckScriptFailure(lines, 'E1341: Variable already declared in the class: count') enddef +func Test_class_garbagecollect() + let lines =<< trim END + vim9script + + class Point + this.p = [2, 3] + static pl = ['a', 'b'] + static pd = {a: 'a', b: 'b'} + endclass + + echo Point.pl Point.pd + call test_garbagecollect_now() + echo Point.pl Point.pd + END + call v9.CheckScriptSuccess(lines) +endfunc + def Test_class_function() var lines =<< trim END vim9script |