unpack into its own directory in tmp, then run the .sh script
  http://mawercer.de/tmp/test-case.zip

  using debugging, vim quits after the line

  -V20./log trace:

  line 1:   let r = []
  line 2:   for x2 in getqflist()
  line 3:     " make a copy of the dictionary, this does not fix it
  line 4:     let x = eval(string(x2))
  line 5:     if has_key(x, 'text')
  line 6:       call add(r, x)
  line 7:       let reg = '\(lines[^:]*:[^:]*\|characters [^-]*-[^ ]* \): 
\(.*\) should be \(.*\)'
  line 8:       if x.text =~ reg
  line 9:         let l = matchlist(x.text, reg)
  line 10:         x.text = l[1]
  Writing viminfo file "/home/marc/.viminfo"%   
  I expect the function to finish cleanly.

  exit code 0

I have another trace, same function but original name:

  function haxe#FormatErrors
  line 7: let l = matchlist(x.text, reg)
  >
  function haxe#FormatErrors
  line 8: x.text = l[1]
  >
  BufDelete Auto commands for "*"
  cmd: call <SID>BMRemove()
  >

why does BufDelete Auto kick in here?
(this was gtk version)

At least I can reproduce this case always.
Can anybody of you reproduce this, too ?
(See [2] for failing/ suceeding :version strings)

valgrind only shows "lost bytes" - nothing else of interest.

I know that gdb can record execution path. However it always stops at
glibc.

This happens with 1115 (current) and older vim patch level 806 (7.3)

This is the backtrace at
 smsg((char_u *)_("Writing viminfo file \"%s\""), fname); 
(Didn't know where else to start)

  ---Type <return> to continue, or q <return> to quit--- 
  Breakpoint 1, write_viminfo (file=0x0, forceit=0) at ex_cmds.c:1965
  (gdb) bt
  #0  write_viminfo (file=0x0, forceit=0) at ex_cmds.c:1965
  #1  0x0000000000626345 in getout (exitval=0) at main.c:1451
  #2  0x00000000004aeb35 in ex_exit (eap=0x7fffe7e2d860) at ex_docmd.c:6984
  #3  0x00000000004a72ac in do_one_cmd (cmdlinep=0x7fffe7e2ded0, sourcing=1, 
cstack=0x7fffe7e2da30, fgetline=0x4a53e0 <get_loop_line>, 
cookie=0x7fffe7e2d9a0) at ex_docmd.c:2693
  #4  0x00000000004a47ed in do_cmdline (cmdline=0x0, fgetline=0x48d6a0 
<get_func_line>, cookie=0xfef050, flags=7) at ex_docmd.c:1130
  #5  0x000000000048cc24 in call_user_func (fp=0xfe4380, argcount=0, 
argvars=0x7fffe7e2e3e0, rettv=0x7fffe7e2e5a0, firstline=1, lastline=1, 
selfdict=0x0) at eval.c:22714
  #6  0x0000000000475600 in call_func (funcname=0xf934d0 "FormatErrors", 
len=12, rettv=0x7fffe7e2e5a0, argcount=0, argvars=0x7fffe7e2e3e0, firstline=1, 
lastline=1, doesrange=0x7fffe7e2e59c, evaluate=1, selfdict=0x0) at eval.c:8494
  #7  0x00000000004751ce in get_func_tv (name=0xf934d0 "FormatErrors", len=12, 
rettv=0x7fffe7e2e5a0, arg=0x7fffe7e2e5c0, firstline=1, lastline=1, 
doesrange=0x7fffe7e2e59c, evaluate=1, selfdict=0x0) at eval.c:8336
  #8  0x000000000046dee3 in ex_call (eap=0x7fffe7e2e670) at eval.c:3456 #9  
0x00000000004a72ac in do_one_cmd (cmdlinep=0x7fffe7e2ece0, sourcing=0, 
cstack=0x7fffe7e2e840, fgetline=0x4bcff3 <getexline>, cookie=0x0) at 
ex_docmd.c:2693
  #10 0x00000000004a47ed in do_cmdline (cmdline=0x0, fgetline=0x4bcff3 
<getexline>, cookie=0x0, flags=0) at ex_docmd.c:1130
  #11 0x0000000000534b28 in nv_colon (cap=0x7fffe7e2ee10) at normal.c:5457
  #12 0x000000000052d5d1 in normal_cmd (oap=0x7fffe7e2eee0, toplevel=1) at 
normal.c:1200
  #13 0x0000000000626088 in main_loop (cmdwin=0, noexmode=0) at main.c:1342
  #14 0x0000000000625918 in main (argc=12, argv=0x7fffe7e2f228) at main.c:1031

I have some small modifications, so lines could be wrong which is why I added 
the line below [1]
The versions at [2] are official releases.

Whicth is the best way to debug/fix/find the cause?

Marc Weber

[2]
failing :version outputs:
my version (nixos linux): http://mawercer.de/tmp/marcs-version-fails
raimondis version (osx) : http://mawercer.de/tmp/raimondi-fails-osx.txt

a sample :version which seems to work (contributed by tommyinla, debian)
http://mawercer.de/tmp/tommyinla-working.txt

me (failing)  <-> tommyinla (working)  - compiled features differing:
-gettext            +gettext
-lua                +lua
-mouse-gpm          +mouse-gpm
-tcl                +tcl
-xim                +xim
-xsmp_interact      +xsmp_interact

[1]: Trace with lines from code:

---Type <return> to continue, or q <return> to quit--- 
Breakpoint 1, write_viminfo (file=0x0, forceit=0) at src/ex_cmds.c:1965
        smsg((char_u *)_("Writing viminfo file \"%s\""), fname);
(gdb) bt
#0  write_viminfo (file=0x0, forceit=0) at src/ex_cmds.c:1965
        smsg((char_u *)_("Writing viminfo file \"%s\""), fname);

#1  0x0000000000626345 in getout (exitval=0) at src/main.c:1451
        write_viminfo(NULL, FALSE);

#2  0x00000000004aeb35 in ex_exit (eap=0x7fffe7e2d860) at src/ex_docmd.c:6984
            getout(0);

#3  0x00000000004a72ac in do_one_cmd (cmdlinep=0x7fffe7e2ded0, sourcing=1, 
cstack=0x7fffe7e2da30, fgetline=0x4a53e0 <get_loop_line>, 
cookie=0x7fffe7e2d9a0) at src/ex_docmd.c:2693
        (cmdnames[ea.cmdidx].cmd_func)(&ea);

#4  0x00000000004a47ed in do_cmdline (cmdline=0x0, fgetline=0x48d6a0 
<get_func_line>, cookie=0xfef050, flags=7) at src/ex_docmd.c:1130
        next_cmdline = do_one_cmd(&cmdline_copy, flags & DOCMD_VERBOSE,

#5  0x000000000048cc24 in call_user_func (fp=0xfe4380, argcount=0, 
argvars=0x7fffe7e2e3e0, rettv=0x7fffe7e2e5a0, firstline=1, lastline=1, 
selfdict=0x0) at src/eval.c:22714
    do_cmdline(NULL, get_func_line, (void *)fc,
                                     DOCMD_NOWAIT|DOCMD_VERBOSE|DOCMD_REPEAT);

#6  0x0000000000475600 in call_func (funcname=0xf934d0 "FormatErrors", len=12, 
rettv=0x7fffe7e2e5a0, argcount=0, argvars=0x7fffe7e2e3e0, firstline=1, 
lastline=1, doesrange=0x7fffe7e2e59c, evaluate=1, selfdict=0x0) at 
src/eval.c:8494
                    call_user_func(fp, argcount, argvars, rettv,
                                               firstline, lastline,
                                  (fp->uf_flags & FC_DICT) ? selfdict : NULL);

#7  0x00000000004751ce in get_func_tv (name=0xf934d0 "FormatErrors", len=12, 
rettv=0x7fffe7e2e5a0, arg=0x7fffe7e2e5c0, firstline=1, lastline=1, 
doesrange=0x7fffe7e2e59c, evaluate=1, selfdict=0x0) at src/eval.c:8336
        ret = call_func(name, len, rettv, argcount, argvars,
                          firstline, lastline, doesrange, evaluate, selfdict);

#8  0x000000000046dee3 in ex_call (eap=0x7fffe7e2e670) at src/eval.c:3456 #9  
0x00000000004a72ac in do_one_cmd (cmdlinep=0x7fffe7e2ece0, sourcing=0, 
cstack=0x7fffe7e2e840, fgetline=0x4bcff3 <getexline>, cookie=0x0) at 
src/ex_docmd.c:2693
        (cmdnames[ea.cmdidx].cmd_func)(&ea);

#10 0x00000000004a47ed in do_cmdline (cmdline=0x0, fgetline=0x4bcff3 
<getexline>, cookie=0x0, flags=0) at src/ex_docmd.c:1130
        next_cmdline = do_one_cmd(&cmdline_copy, flags & DOCMD_VERBOSE,

#11 0x0000000000534b28 in nv_colon (cap=0x7fffe7e2ee10) at src/normal.c:5457
        cmd_result = do_cmdline(NULL, getexline, NULL,
                            cap->oap->op_type != OP_NOP ? DOCMD_KEEPLINE : 0);

#12 0x000000000052d5d1 in normal_cmd (oap=0x7fffe7e2eee0, toplevel=1) at 
src/normal.c:1200
    (nv_cmds[idx].cmd_func)(&ca);

#13 0x0000000000626088 in main_loop (cmdwin=0, noexmode=0) at src/main.c:1342
            normal_cmd(&oa, TRUE);

#14 0x0000000000625918 in main (argc=12, argv=0x7fffe7e2f228) at src/main.c:1031
    main_loop(FALSE, FALSE);

-- 
-- 
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].
For more options, visit https://groups.google.com/groups/opt_out.


Raspunde prin e-mail lui