-
Notifications
You must be signed in to change notification settings - Fork 10
Closed
Description
質問・報告の内容
:rubyfileコマンドが必ずSEGVします。
# Vim を起動
$ vim -u NONE -N
# vimで以下を打ち込む
:rubyfile a<CR>
Vim: Caught deadly signal SEGV
Vim: Finished.
zsh: segmentation fault (core dumped) vim -u NONE -N
なお、aはファイル名ですが、このファイルの存在の有無にかかわらずSEGVします。
Vimのバージョン
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Jan 3 2018 07:13:39)
Included patches: 1-1415
Compiled by Arch Linux
Huge version with GTK3 GUI. Features included (+) or not (-):
+acl +farsi +mouse_sgr -tag_any_white
+arabic +file_in_path -mouse_sysmouse +tcl/dyn
+autocmd +find_in_path +mouse_urxvt +termguicolors
-autoservername +float +mouse_xterm +terminal
+balloon_eval +folding +multi_byte +terminfo
+balloon_eval_term -footer +multi_lang +termresponse
+browse +fork() -mzscheme +textobjects
++builtin_terms +gettext +netbeans_intg +timers
+byte_offset -hangul_input +num64 +title
+channel +iconv +packages +toolbar
+cindent +insert_expand +path_extra +user_commands
+clientserver +job +perl/dyn +vertsplit
+clipboard +jumplist +persistent_undo +virtualedit
+cmdline_compl +keymap +postscript +visual
+cmdline_hist +lambda +printer +visualextra
+cmdline_info +langmap +profile +viminfo
+comments +libcall +python/dyn +vreplace
+conceal +linebreak +python3/dyn +wildignore
+cryptv +lispindent +quickfix +wildmenu
+cscope +listcmds +reltime +windows
+cursorbind +localmap +rightleft +writebackup
+cursorshape +lua/dyn +ruby/dyn +X11
+dialog_con_gui +menu +scrollbind -xfontset
+diff +mksession +signs +xim
+digraphs +modify_fname +smartindent -xpm
+dnd +mouse +startuptime +xsmp_interact
-ebcdic +mouseshape +statusline +xterm_clipboard
+emacs_tags +mouse_dec -sun_workshop -xterm_save
+eval +mouse_gpm +syntax
+ex_extra -mouse_jsbterm +tag_binary
+extra_search +mouse_netterm +tag_old_static
system vimrc file: "/etc/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
system gvimrc file: "/etc/gvimrc"
user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
defaults file: "$VIMRUNTIME/defaults.vim"
system menu file: "$VIMRUNTIME/menu.vim"
fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -D_FORTIFY_SOURCE=2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc -L. -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.26/core_perl/CORE -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -L/usr/local/lib -Wl,--as-needed -o vim -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lSM -lICE -lXt -lX11 -lXdmcp -lSM -lICE -lm -ltinfo -lelf -lnsl -lacl -lattr -lgpm -ldl -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.26/core_perl/CORE -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fstack-protector-strong -L/usr/local/lib -L/usr/lib/perl5/5.26/core_perl/CORE -lperl -lpthread -lnsl -ldl -lm -lcrypt -lutil -lc -L/usr/lib -ltclstub8.6 -ldl -lz -lpthread -lieee -lm
( :version で確認できます)
OSの種類/ディストリ/バージョン
Arch Linux 64bit
$ uname -a
Linux jigglypuff 4.14.5-1-ARCH #1 SMP PREEMPT Sun Dec 10 14:50:30 UTC 2017 x86_64 GNU/Linux
使用している or 関係していそうなプラグイン
Ruby のバージョンは2.5で、Ruby, Vim共にOSのパッケージマネージャ(pacman)から入れたものです。
$ pacman -Qs ruby
local/rbenv 1.1.1-1
Simple Ruby version manager
local/ruby 2.5.0-1
An object-oriented language for quick and easy programming
local/ruby-build-git v20171215.r3.ga97a138-1
Compile and install Ruby
local/ruby-docs 2.5.0-1
Documentation files for ruby
$ pacman -Qs vim
local/gvim 8.0.1415-2
Vi Improved, a highly configurable, improved version of the vi text editor (with advanced features, such as a GUI)
local/vim-runtime 8.0.1415-2
Runtime for vim and gvim
その他
:rubyコマンドは正常に動いています。
$ vim -u NONE -N
# 1が表示される
:ruby p 1
#1098 が関連しているような気も少しします(これが解決された後辺りからrubyfileが使えなくなったような気がしていますが、正確な時期は不明です。)
+ruby/dyn の場合はこれでもまだテストが失敗するらしく、
#1098 (comment)
私の環境が+ruby/dynなので、このコメントが少し気になります。
workaround
:rubyfileの代わりに:rubyを使うことで、if_rubyを使用することはできます。
# これを
:rubyfile a.rb
# 以下に置き換える
:ruby require "a.rb"