On Sat, Feb 13, 2021 at 04:23:02PM -0500, James McCoy wrote:
> On Sat, Feb 13, 2021 at 07:13:35PM +0100, Bram Moolenaar wrote:
> >
> > Somehow the Travis tests run fail for s390:
> > https://travis-ci.com/github/vim/vim/builds/217016917
> >
> > I do not see this failure on other systems and valgrind and ASAN also do
> > not report a problem.
> >
> > Does anyone have an idea of how to pinpoint this problem?
>
> I'll see if I can replace on Debian's s390x system.
It looks like the problematic test is Test_try_catch_throw. I was able
to whittle that down to
def Test_try_catch_throw()
var l = []
try # comment
finally # comment
add(l, '3')
endtry # comment
if 1
else
try | finally | endtry
endif
enddef
and "make test_vim9_script.res TEST_FILTER=Test_try_catch_throw"
consistently fails. I've attached the resulting valgrind log.
Cheers,
--
James
GPG Key: 4096R/91BF BF4D 6956 BD5D F7B7 2D23 DFE6 91AE 331B A3DB
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/vim_dev/20210214044007.d6tpi4gses4jhps6%40localhost.
==36508== Memcheck, a memory error detector
==36508== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==36508== Using Valgrind-3.16.1 and LibVEX; rerun with -h for copyright info
==36508== Command: ../vim -f -u unix.vim -U NONE --noplugin --not-a-term -S
runtest.vim test_vim9_script.vim --cmd au\ SwapExists\ *\ let\ v:swapchoice\ =\
"e"
==36508== Parent PID: 36507
==36508==
==36508== Invalid read of size 1
==36508== at 0x113A34A: list_set_item (list.c:162)
==36508== by 0x12F8C57: exe_newlist (vim9execute.c:136)
==36508== by 0x12F8C57: call_def_function (vim9execute.c:2273)
==36508== by 0x12D23C9: call_user_func (userfunc.c:1656)
==36508== by 0x12D23C9: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508== Address 0x5e408a0 is 16 bytes after a block of size 2,160 alloc'd
==36508== at 0x4834F5E: malloc (in
/usr/lib/s390x-linux-gnu/valgrind/vgpreload_memcheck-s390x-linux.so)
==36508== by 0x1172D13: lalloc (misc2.c:925)
==36508== by 0x1172D13: alloc_clear (misc2.c:852)
==36508== by 0x12D230D: call_user_func (userfunc.c:1635)
==36508== by 0x12D230D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508==
==36508== Invalid write of size 4
==36508== at 0x12FB10A: exe_newlist (vim9execute.c:145)
==36508== by 0x12FB10A: call_def_function (vim9execute.c:2273)
==36508== by 0x12D23C9: call_user_func (userfunc.c:1656)
==36508== by 0x12D23C9: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508== Address 0x5e408a0 is 16 bytes after a block of size 2,160 alloc'd
==36508== at 0x4834F5E: malloc (in
/usr/lib/s390x-linux-gnu/valgrind/vgpreload_memcheck-s390x-linux.so)
==36508== by 0x1172D13: lalloc (misc2.c:925)
==36508== by 0x1172D13: alloc_clear (misc2.c:852)
==36508== by 0x12D230D: call_user_func (userfunc.c:1635)
==36508== by 0x12D230D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508==
==36508== Invalid write of size 8
==36508== at 0x12FB110: exe_newlist (vim9execute.c:146)
==36508== by 0x12FB110: call_def_function (vim9execute.c:2273)
==36508== by 0x12D23C9: call_user_func (userfunc.c:1656)
==36508== by 0x12D23C9: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508== Address 0x5e408a8 is 24 bytes after a block of size 2,160 in arena
"client"
==36508==
==36508== Invalid read of size 1
==36508== at 0x12F879A: call_def_function (vim9execute.c:1778)
==36508== by 0x12D23C9: call_user_func (userfunc.c:1656)
==36508== by 0x12D23C9: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508== Address 0x5e408a0 is 16 bytes after a block of size 2,160 alloc'd
==36508== at 0x4834F5E: malloc (in
/usr/lib/s390x-linux-gnu/valgrind/vgpreload_memcheck-s390x-linux.so)
==36508== by 0x1172D13: lalloc (misc2.c:925)
==36508== by 0x1172D13: alloc_clear (misc2.c:852)
==36508== by 0x12D230D: call_user_func (userfunc.c:1635)
==36508== by 0x12D230D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508==
==36508== Invalid write of size 4
==36508== at 0x12BC63E: copy_tv (typval.c:586)
==36508== by 0x12FB219: call_def_function (vim9execute.c:0)
==36508== by 0x12D23C9: call_user_func (userfunc.c:1656)
==36508== by 0x12D23C9: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508== Address 0x5e408a0 is 16 bytes after a block of size 2,160 alloc'd
==36508== at 0x4834F5E: malloc (in
/usr/lib/s390x-linux-gnu/valgrind/vgpreload_memcheck-s390x-linux.so)
==36508== by 0x1172D13: lalloc (misc2.c:925)
==36508== by 0x1172D13: alloc_clear (misc2.c:852)
==36508== by 0x12D230D: call_user_func (userfunc.c:1635)
==36508== by 0x12D230D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508==
==36508== Invalid write of size 1
==36508== at 0x12BC648: copy_tv (typval.c:587)
==36508== by 0x12FB219: call_def_function (vim9execute.c:0)
==36508== by 0x12D23C9: call_user_func (userfunc.c:1656)
==36508== by 0x12D23C9: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508== Address 0x5e408a4 is 20 bytes after a block of size 2,160 alloc'd
==36508== at 0x4834F5E: malloc (in
/usr/lib/s390x-linux-gnu/valgrind/vgpreload_memcheck-s390x-linux.so)
==36508== by 0x1172D13: lalloc (misc2.c:925)
==36508== by 0x1172D13: alloc_clear (misc2.c:852)
==36508== by 0x12D230D: call_user_func (userfunc.c:1635)
==36508== by 0x12D230D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
==36508==
valgrind: m_mallocfree.c:303 (get_bszB_as_is): Assertion 'bszB_lo == bszB_hi'
failed.
valgrind: Heap block lo/hi size mismatch: lo = 2224, hi = 98838608.
This is probably caused by your program erroneously writing past the
end of a heap block and corrupting heap metadata. If you fix any
invalid writes reported by Memcheck, this assertion failure will
probably go away. Please try that before reporting this as a bug.
host stacktrace:
==36508== at 0x800049098: ??? (in
/usr/lib/s390x-linux-gnu/valgrind/memcheck-s390x-linux)
==36508== by 0x800049275: ??? (in
/usr/lib/s390x-linux-gnu/valgrind/memcheck-s390x-linux)
==36508== by 0x8000493BB: ??? (in
/usr/lib/s390x-linux-gnu/valgrind/memcheck-s390x-linux)
==36508== by 0x800054BFD: ??? (in
/usr/lib/s390x-linux-gnu/valgrind/memcheck-s390x-linux)
==36508== by 0x80003F0E1: ??? (in
/usr/lib/s390x-linux-gnu/valgrind/memcheck-s390x-linux)
==36508== by 0x80003DEC9: ??? (in
/usr/lib/s390x-linux-gnu/valgrind/memcheck-s390x-linux)
==36508== by 0x800043379: ??? (in
/usr/lib/s390x-linux-gnu/valgrind/memcheck-s390x-linux)
==36508== by 0x80003D1C5: ??? (in
/usr/lib/s390x-linux-gnu/valgrind/memcheck-s390x-linux)
==36508== by 0x10044BF101: ???
sched status:
running_tid=1
Thread 1: status = VgTs_Runnable (lwpid 36508)
==36508== at 0x12BC706: copy_tv (typval.c:648)
==36508== by 0x12FB219: call_def_function (vim9execute.c:0)
==36508== by 0x12D23C9: call_user_func (userfunc.c:1656)
==36508== by 0x12D23C9: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x1097A63: ex_execute (eval.c:6136)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x12D2C8D: call_user_func (userfunc.c:1897)
==36508== by 0x12D2C8D: call_user_func_check (userfunc.c:2038)
==36508== by 0x12D13B5: call_func (userfunc.c:2504)
==36508== by 0x12D0B75: get_func_tv (userfunc.c:919)
==36508== by 0x12DA035: ex_call (userfunc.c:4490)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x123935F: do_source (scriptfile.c:1404)
==36508== by 0x123894F: cmd_source (scriptfile.c:971)
==36508== by 0x123894F: ex_source (scriptfile.c:997)
==36508== by 0x10C38F7: do_one_cmd (ex_docmd.c:2585)
==36508== by 0x10BF9FD: do_cmdline (ex_docmd.c:1000)
==36508== by 0x135B0EB: exe_commands (main.c:3059)
==36508== by 0x135B0EB: vim_main2 (main.c:760)
==36508== by 0x1359E4D: main (main.c:412)
client stack range: [0x1FFEFE4000 0x1FFF000FFF] client SP: 0x1FFEFF97F8
valgrind stack range: [0x1002CA6000 0x1002DA5FFF] top usage: 20872 of 1048576
Note: see also the FAQ in the source distribution.
It contains workarounds to several common problems.
In particular, if Valgrind aborted or crashed after
identifying problems in your program, there's a good chance
that fixing those problems will prevent Valgrind aborting or
crashing, especially if it happened in m_mallocfree.c.
If that doesn't help, please report this bug to: www.valgrind.org
In the bug report, send all the above text, the valgrind
version, and what OS and version you are using. Thanks.