Hi Bram,

On Sat, Nov 21, 2020 at 6:57 AM Bram Moolenaar <[email protected]> wrote:

>
> Yegappan wrote:
>
> > When I run the test_vim9_expr.vim test on MacOS with Vim 8.2.2029),
> > I see that VIm crashes with a bad instruction exception.
> >
> > * thread #1, queue = 'com.apple.main-thread', stop reason =
> > EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
> >
> > I see this crash only when building Vim with debug symbols (-g -O0).
> > If I build Vim without the debug symbols, I don't see this problem.
> > I also don't see this crash with the ASAN and UBSAN builds.
> >
> > Is this a bug in the compiler? I am using the following Clang compiler on
> > Catalina:
> >
> > Apple clang version 12.0.0 (clang-1200.0.32.21)
> > Target: x86_64-apple-darwin19.6.0
> >
> > The complete traceback is below:
> >
> > * thread #1, queue = 'com.apple.main-thread', stop reason =
> > EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
> >   * frame #0: 0x00007fff6af56fca
> > libsystem_c.dylib`__chk_fail_overflow.cold.1 + 16
> >     frame #1: 0x00007fff6af54214 libsystem_c.dylib`__chk_fail_overflow +
> 9
> >     frame #2: 0x00007fff6af543f0 libsystem_c.dylib`__strcpy_chk + 83
> >     frame #3: 0x000000010029287b
> > vim`add_vim9_script_var(di=0x0000000100606550, tv=0x00007ffeefbf9178,
> > type=0x0000000000000000) at vim9script.c:604:2
>
> This is:
>
>         STRCPY(&newsav->sav_key, di->di_key);
>
> And "sav_key" is a one byte array, that is actually longer.  This looks
> like the FORTIFY_SOURCE problem.  Configure only adds this for GCC 4 and
> higher, perhaps we also need it for clang?
>
> You could try adding this to the clang command:
>          -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
>
>
With FORTIFY_SOURCE, I am not able to reproduce the problem.

Regards,
Yegappan

-- 
-- 
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/CAAW7x7%3DxdSnhOFcmUAHUR-ydntjs8FTYmicr2w9oZqcphQuxrA%40mail.gmail.com.

Raspunde prin e-mail lui