But motif didn't change. It's working fine for the previous version of vim
that I had compiled. And I want motif, not athena, so it's not really a fix.
But maybe it is.
I tried that and test_giu.vim still crashed but differently:
VIMRUNTIME=../../runtime; export VIMRUNTIME; ../vim -f -u unix.vim -u NONE -U NONE --noplugin --not-a-term -S runtest.vim test_gui.vim
Vim: Caught deadly signal SEGV
Vim: Finished.
/bin/sh: line 1: 31308 Segmentation fault: 11 (core dumped) ../vim -f -u unix.vim -u NONE -U NONE --noplugin --not-a-term -S runtest.vim test_gui.vim
make[2]: *** [test_gui.res] Error 139
make[1]: *** [scripttests] Error 2
make: *** [test] Error 2
However, if I run "src/vim -g" or "src/vim" and enter :gui from within the source directory,
the athena gui does start so the crash isn't as immediate as with motif.
raf:raf:vim> lldb -c /cores/core.31308
(lldb) target create --core "/cores/core.31308"
warning: (x86_64) /cores/core.31308 load command 120 LC_SEGMENT_64 has a fileoff + filesize (0x28f42000) that extends beyond the end of the file (0x28f41000), the segment will be truncated to match
warning: (x86_64) /cores/core.31308 load command 121 LC_SEGMENT_64 has a fileoff (0x28f42000) that extends beyond the end of the file (0x28f41000), ignoring this section
btCore file '/cores/core.31308' (x86_64) was loaded.
(lldb) bt
* thread #1: tid = 0x0000, 0x00007fff955b68ea libsystem_kernel.dylib`__kill + 10, stop reason = signal SIGSTOP
* frame #0: 0x00007fff955b68ea libsystem_kernel.dylib`__kill + 10
frame #1: 0x000000010666c8ad vim`mch_exit [inlined] may_core_dump + 285 at os_unix.c:3371 [opt]
frame #2: 0x000000010666c885 vim`mch_exit(r=1) + 245 at os_unix.c:3337 [opt]
frame #3: 0x0000000106783a9b vim`getout(exitval=<unavailable>) + 619 at main.c:1552 [opt]
frame #4: 0x00007fff9bf3c52a libsystem_platform.dylib`_sigtramp + 26
frame #5: 0x00000001069696bc libXt.6.dylib`XtWidgetToApplicationContext + 14
frame #6: 0x0000000106967ffd libXt.6.dylib`XtDestroyWidget + 18
frame #7: 0x000000010674d46d vim`gui_mch_destroy_menu(menu=<unavailable>) + 717 at gui_athena.c:1602 [opt]
frame #8: 0x0000000106623fd5 vim`free_menu(menup=0x00007f9e52e19d40) + 37 at menu.c:1053 [opt]
frame #9: 0x00000001066212dc vim`remove_menu(menup=0x00007f9e52e19d40, name=<unavailable>, modes=<unavailable>, silent=0) + 1164 at menu.c:1021 [opt]
frame #10: 0x000000010661fffa vim`ex_menu(eap=<unavailable>) + 2266 at menu.c:360 [opt]
frame #11: 0x00000001065b9cf7 vim`do_cmdline [inlined] do_one_cmd(sourcing=1, cstack=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>) + 1603 at ex_docmd.c:2500 [opt]
frame #12: 0x00000001065b96b4 vim`do_cmdline(cmdline=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>, flags=4) + 8100 at ex_docmd.c:995 [opt]
frame #13: 0x0000000106731fa0 vim`call_func [inlined] call_user_func(fp=<unavailable>, argcount=<unavailable>, argvars=<unavailable>, selfdict=<unavailable>) + 1319 at userfunc.c:1063 [opt]
frame #14: 0x0000000106731a79 vim`call_func(funcname=<unavailable>, len=<unavailable>, rettv=<unavailable>, argcount_in=<unavailable>, argvars_in=<unavailable>, argv_func=0x00007f9e52f07c20, firstline=<unavailable>, lastline=<unavailable>, doesrange=<unavailable>, evaluate=<unavailable>, partial=<unavailable>, selfdict_in=<unavailable>) + 2729 at userfunc.c:1621 [opt]
frame #15: 0x0000000106730eff vim`get_func_tv(name="Test_menu", len=-1, rettv=0x00007fff596aa078, arg=0x00007fff596aa090, firstline=1, lastline=1, doesrange=<unavailable>, evaluate=<unavailable>, partial=<unavailable>, selfdict=<unavailable>) + 735 at userfunc.c:490 [opt]
frame #16: 0x00000001067363da vim`ex_call(eap=<unavailable>) + 458 at userfunc.c:3338 [opt]
frame #17: 0x00000001065b9cf7 vim`do_cmdline [inlined] do_one_cmd(sourcing=1, cstack=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>) + 1603 at ex_docmd.c:2500 [opt]
frame #18: 0x00000001065b96b4 vim`do_cmdline(cmdline=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>, flags=0) + 8100 at ex_docmd.c:995 [opt]
frame #19: 0x0000000106587dcb vim`ex_execute(eap=<unavailable>) + 731 at eval.c:8865 [opt]
frame #20: 0x00000001065b9cf7 vim`do_cmdline [inlined] do_one_cmd(sourcing=1, cstack=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>) + 1603 at ex_docmd.c:2500 [opt]
frame #21: 0x00000001065b96b4 vim`do_cmdline(cmdline=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>, flags=4) + 8100 at ex_docmd.c:995 [opt]
frame #22: 0x0000000106731fa0 vim`call_func [inlined] call_user_func(fp=<unavailable>, argcount=<unavailable>, argvars=<unavailable>, selfdict=<unavailable>) + 1319 at userfunc.c:1063 [opt]
frame #23: 0x0000000106731a79 vim`call_func(funcname=<unavailable>, len=<unavailable>, rettv=<unavailable>, argcount_in=<unavailable>, argvars_in=<unavailable>, argv_func=0x00007f9e52c17450, firstline=<unavailable>, lastline=<unavailable>, doesrange=<unavailable>, evaluate=<unavailable>, partial=<unavailable>, selfdict_in=<unavailable>) + 2729 at userfunc.c:1621 [opt]
frame #24: 0x0000000106730eff vim`get_func_tv(name="RunTheTest", len=-1, rettv=0x00007fff596aba08, arg=0x00007fff596aba20, firstline=1, lastline=1, doesrange=<unavailable>, evaluate=<unavailable>, partial=<unavailable>, selfdict=<unavailable>) + 735 at userfunc.c:490 [opt]
frame #25: 0x00000001067363da vim`ex_call(eap=<unavailable>) + 458 at userfunc.c:3338 [opt]
frame #26: 0x00000001065b9cf7 vim`do_cmdline [inlined] do_one_cmd(sourcing=1, cstack=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>) + 1603 at ex_docmd.c:2500 [opt]
frame #27: 0x00000001065b96b4 vim`do_cmdline(cmdline=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>, flags=4) + 8100 at ex_docmd.c:995 [opt]
frame #28: 0x00000001065b609a vim`do_source(fname=<unavailable>, check_other=<unavailable>, is_vimrc=<unavailable>) + 1978 at ex_cmds2.c:3633 [opt]
frame #29: 0x00000001065b57f4 vim`cmd_source(fname="runtest.vim", eap=<unavailable>) + 100 at ex_cmds2.c:3253 [opt]
frame #30: 0x00000001065b9cf7 vim`do_cmdline [inlined] do_one_cmd(sourcing=1, cstack=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>) + 1603 at ex_docmd.c:2500 [opt]
frame #31: 0x00000001065b96b4 vim`do_cmdline(cmdline=<unavailable>, fgetline=<unavailable>, cookie=<unavailable>, flags=0) + 8100 at ex_docmd.c:995 [opt]
frame #32: 0x000000010678358a vim`vim_main2 [inlined] exe_commands + 90 at main.c:2975 [opt]
frame #33: 0x0000000106783530 vim`vim_main2 + 3296 at main.c:797 [opt]
frame #34: 0x0000000106781f16 vim`main(argc=<unavailable>, argv=<unavailable>) + 10086 at main.c:444 [opt]
frame #35: 0x00007fff8d7a65ad libdyld.dylib`start + 1
frame #36: 0x00007fff8d7a65ad libdyld.dylib`start + 1