lilydjwg wrote:

> Starting with 7.4.497 (found by git bisect), I get the following crash:
> 
> 1. put the attached files in current directory
> 2. run vim -u vimrc --noplugin
> 3. vim crashes, backtrace:
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffff5141434 in __memmove_ssse3_back () from /usr/lib/libc.so.6
> (gdb) bt
> #0  0x00007ffff5141434 in __memmove_ssse3_back () from /usr/lib/libc.so.6
> #1  0x0000000000475203 in memmove (__len=18446744073700127088, 
> __src=0x8f9790, __dest=<optimized out>) at /usr/include/bits/string3.h:57
> #2  do_string_sub (
>     str=str@entry=0x8f9790 "contained role oncontextmenu onchange 
> onmousewheel onselect onsubmit onkeydown onloadeddata contextmenu ondragenter 
> onvolumechange\n", ' ' <repeats 19 times>, "contained onemptied onended 
> onmousedown onseeking "..., 
>     pat=pat@entry=0x8b5080 "\\%(\\<match 
> \\/[^/]\\{-}\\)\\@<=\\<\\w\\{1,2}\\>\\ze.\\{-}\\\\\\@<!\\/\\%(\\%(ms\\|me\\|hs\\|he\\|rs\\|re\\|lc\\)\\S\\+\\)\\?\\s\\+",
>  sub=sub@entry=0x8b21d0 "", flags=<optimized out>) at eval.c:25145
> #3  0x00000000004753f6 in f_substitute (argvars=0x7fffffffc8d0, 
> rettv=0x7fffffffcdc0) at eval.c:18357
> #4  0x0000000000468880 in call_func (funcname=0x10 <error: Cannot access 
> memory at address 0x10>, 
>     funcname@entry=0x8b4c01 "substitute( syn_list, '\\%(\\<match 
> \\/[^/]\\{-}\\)\\@<=\\<\\w\\{1,2}\\>\\ze.\\{-}\\\\\\@<!\\/\\%(\\%(ms\\|me\\|hs\\|he\\|rs\\|re\\|lc\\)\\S\\+\\)\\?\\s\\+',
>  '', 'g' )", len=9410464, len@entry=10, rettv=0x1, argcount=0, 
> argcount@entry=4, argvars=0x0, 
>     argvars@entry=0x7fffffffc8d0, firstline=72057594028466577, 
> firstline@entry=1, lastline=1, doesrange=0x7fffffffcaa8, evaluate=1, 
> selfdict=0x0)
>     at eval.c:8626
> #5  0x000000000046c813 in get_func_tv (
>     name=0x8b4c01 "substitute( syn_list, '\\%(\\<match 
> \\/[^/]\\{-}\\)\\@<=\\<\\w\\{1,2}\\>\\ze.\\{-}\\\\\\@<!\\/\\%(\\%(ms\\|me\\|hs\\|he\\|rs\\|re\\|lc\\)\\S\\+\\)\\?\\s\\+',
>  '', 'g' )", len=10, rettv=0x7fffffffcdc0, arg=0x7fffffffcd48, firstline=1, 
> lastline=1, doesrange=0x7fffffffcaa8, 
>     evaluate=1, selfdict=0x0) at eval.c:8433
> #6  0x000000000046b258 in eval7 (arg=0x7fffffffcd48, rettv=0x7fffffffcdc0, 
> evaluate=1, want_string=-13656) at eval.c:5210
> #7  0x000000000046b424 in eval6 (arg=arg@entry=0x7fffffffcd48, 
> rettv=rettv@entry=0x7fffffffcdc0, evaluate=evaluate@entry=1, 
>     want_string=want_string@entry=0) at eval.c:4861
> #8  0x000000000046b68e in eval5 (arg=0x7fffffffcd48, rettv=0x7fffffffcdc0, 
> evaluate=1) at eval.c:4677
> #9  0x000000000046c295 in eval4 (evaluate=1, rettv=0x7fffffffcdc0, 
> arg=0x7fffffffcd48) at eval.c:4370
> #10 eval3 (arg=arg@entry=0x7fffffffcd48, rettv=rettv@entry=0x7fffffffcdc0, 
> evaluate=evaluate@entry=1) at eval.c:4282
> #11 0x000000000046c415 in eval2 (evaluate=1, rettv=0x7fffffffcdc0, 
> arg=0x7fffffffcd48) at eval.c:4211
> #12 eval1 (arg=0x7fffffffcd48, rettv=0x7fffffffcdc0, evaluate=1) at 
> eval.c:4136
> #13 0x000000000046cd2e in eval0 (
>     arg=0x8b4c01 "substitute( syn_list, '\\%(\\<match 
> \\/[^/]\\{-}\\)\\@<=\\<\\w\\{1,2}\\>\\ze.\\{-}\\\\\\@<!\\/\\%(\\%(ms\\|me\\|hs\\|he\\|rs\\|re\\|lc\\)\\S\\+\\)\\?\\s\\+',
>  '', 'g' )", rettv=rettv@entry=0x7fffffffcdc0, 
> nextcmd=nextcmd@entry=0x7fffffffcfb8, evaluate=1) at eval.c:4093
> #14 0x00000000004737c1 in ex_let (eap=0x7fffffffcfb0) at eval.c:1913
> #15 0x00000000004908be in do_one_cmd (cookie=<optimized out>, 
> fgetline=0x48a7e0 <get_loop_line>, cstack=0x7fffffffd060, sourcing=1, 
>     cmdlinep=0x7fffffffcf08) at ex_docmd.c:2705
> #16 do_cmdline (cmdline=cmdline@entry=0x8f8b70 "let syn_list = 
> join(readfile('syn_list'), \"\\n\")", 
>     fgetline=fgetline@entry=0x485800 <getsourceline>, 
> cookie=cookie@entry=0x7fffffffd5b0, flags=flags@entry=7) at ex_docmd.c:1131
> #17 0x0000000000485df2 in do_source (fname=0x613ca3 "~/.vim/vimrc", 
> check_other=<optimized out>, is_vimrc=<optimized out>) at ex_cmds2.c:3315
> #18 0x0000000000437018 in source_startup_scripts (parmp=<optimized out>, 
> parmp=<optimized out>) at main.c:3012
> #19 main (argc=0, argv=0x7fffffffd901) at main.c:614
> 
> These files are from a HTML 5 syntax file and the official
> autoload/syntaxcomplete.vim file.

Looks like the size goes negative, indicating a match before where
vim_regexec_nl() is supposed to look.  Not sure why.

-- 
Dogs must have a permit signed by the mayor in order to congregate in groups
of three or more on private property.
                [real standing law in Oklahoma, United States of America]

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
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/d/optout.

Raspunde prin e-mail lui