I've been noticing some compiler warnings recently, so I did a "make reconfig" (with logging of course) to catch any of them as there are in what I compile.

My Huge build is made with the following settings (on 64-bit Linux):

export CONF_OPT_GUI='--enable-gnome-check'
export CONF_OPT_LUA='--enable-luainterp'
export CONF_OPT_PERL='--enable-perlinterp'
export CONF_OPT_PYTHON='--enable-pythoninterp'
export CONF_OPT_TCL='--enable-tclinterp'
export CONF_OPT_RUBY='--enable-rubyinterp'
export CONF_OPT_MZSCHEME='--disable-mzschemeinterp'
export CONF_OPT_CSCOPE='--enable-cscope'
export CONF_OPT_MULTIBYTE='--enable-multibyte'
export CONF_OPT_FEAT='--with-features=huge'
export CONF_OPT_COMPBY='"[email protected]"'
export CONF_ARGS=''

I also define FEAT_XTERM_SAVE and undefine FEAT_TAG_OLDSTATIC in its feature.h

As you can see, it includes almost all features but still leaves out the Python3 and MzScheme modules. I also compile a Tiny build as a kind of sanity test; there I exclude everything I can.

Results:

- No compiler warnings or errors in the Tiny build.

- The Huge build had the following warnings (one for a possibly uninitialized variable in term.c and one for duplicate but in this case not really conflicting defines in files included from if_ruby.c):

term.c: In function ‘check_termcode’:
term.c:4217:42: warning: ‘row_char’ may be used uninitialized in this function [-Wmaybe-uninitialized]
   if (j == 1 && tp[i] == 'R' && row_char == '2' && col >= 2)
                                          ^
In file included from vim.h:275:0,
                 from if_ruby.c:143:
os_unix.h:568:0: warning: "HAVE_DUP" redefined [enabled by default]
 #define HAVE_DUP  /* have dup() */
 ^
In file included from /usr/include/ruby-2.0.0/ruby/ruby.h:24:0,
                 from /usr/include/ruby-2.0.0/ruby.h:33,
                 from if_ruby.c:105:
/usr/include/ruby-2.0.0/x86_64-linux/ruby/config.h:260:0: note: this is the location of the previous definition
 #define HAVE_DUP 1
 ^

I suppose that the simplest way to avoid the latter message would be by wrapping line 568 of os_unix.h (and possibly similar defines for other platforms) as follows:
        #ifndef HAVE_DUP        /* avoid duplication in if_ruby.h */
        # define HAVE_DUP       /* have dup() */
        #endif
A better way, though, might be to give a different name to the define in os_unix.h:568 but that means renaming it everywhere else that it is used.

- When I type "gcc --version" (without the quotes) at a shell prompt, I get the following answer:
gcc (SUSE Linux) 4.8.1 20130909 [gcc-4_8-branch revision 202388]
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

- I'm appending the :version message for this Huge build as an attachment.


Best regards,
Tony.
--
"I go the way that Providence dictates with the assurance of a sleepwalker."
         [Adolf Hitler, Speech, 15 March 1936, Munich, Germany.]

--
--
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.
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Mar 25 2014 07:53:28)
Included patches: 1-214
Compiled by [email protected]
Huge version with GTK2-GNOME GUI.  Features included (+) or not (-):
+acl             +farsi           +mouse_netterm   +syntax
+arabic          +file_in_path    +mouse_sgr       +tag_binary
+autocmd         +find_in_path    -mouse_sysmouse  -tag_old_static
+balloon_eval    +float           +mouse_urxvt     -tag_any_white
+browse          +folding         +mouse_xterm     +tcl
++builtin_terms  -footer          +multi_byte      +terminfo
+byte_offset     +fork()          +multi_lang      +termresponse
+cindent         +gettext         -mzscheme        +textobjects
+clientserver    -hangul_input    +netbeans_intg   +title
+clipboard       +iconv           +path_extra      +toolbar
+cmdline_compl   +insert_expand   +perl            +user_commands
+cmdline_hist    +jumplist        +persistent_undo +vertsplit
+cmdline_info    +keymap          +postscript      +virtualedit
+comments        +langmap         +printer         +visual
+conceal         +libcall         +profile         +visualextra
+cryptv          +linebreak       +python          +viminfo
+cscope          +lispindent      -python3         +vreplace
+cursorbind      +listcmds        +quickfix        +wildignore
+cursorshape     +localmap        +reltime         +wildmenu
+dialog_con_gui  -lua             +rightleft       +windows
+diff            +menu            +ruby            +writebackup
+digraphs        +mksession       +scrollbind      +X11
+dnd             +modify_fname    +signs           -xfontset
-ebcdic          +mouse           +smartindent     +xim
+emacs_tags      +mouseshape      -sniff           +xsmp_interact
+eval            +mouse_dec       +startuptime     +xterm_clipboard
+ex_extra        +mouse_gpm       +statusline      +xterm_save
+extra_search    -mouse_jsbterm   -sun_workshop    +xpm
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
  system gvimrc file: "$VIM/gvimrc"
    user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
    system menu file: "$VIMRUNTIME/menu.vim"
  fall-back for $VIM: "/usr/local/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread 
-I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/pango-1.0 
-I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 
-I/usr/include/libdrm -I/usr/include/libpng12 -I/usr/include/gdk-pixbuf-2.0 
-I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz 
-I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include 
-I/usr/include/freetype2  -D_REENTRANT -DORBIT2=1 -pthread 
-I/usr/include/libgnomeui-2.0 -I/usr/include/gnome-keyring-1 
-I/usr/include/libbonoboui-2.0 -I/usr/include/libxml2 
-I/usr/include/libgnome-2.0 -I/usr/include/libbonobo-2.0 
-I/usr/include/bonobo-activation-2.0 -I/usr/include/orbit-2.0 
-I/usr/include/libgnomecanvas-2.0 -I/usr/include/gail-1.0 
-I/usr/include/libart-2.0 -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include 
-I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo 
-I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/libpng12 
-I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 
-I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 
-I/usr/include/gnome-vfs-2.0 -I/usr/lib64/gnome-vfs-2.0/include 
-I/usr/include/gconf/2 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include 
-I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include    -O2 
-fno-strength-reduce -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1     
-I/usr/include  -D_REENTRANT=1  -D_THREAD_SAFE=1  -D_LARGEFILE64_SOURCE=1  
Linking: gcc   -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E 
-Wl,-rpath,/usr/lib/perl5/5.18.1/x86_64-linux-thread-multi/CORE   
-L/usr/local/lib -Wl,--as-needed -o vim   -lgtk-x11-2.0 -lgdk-x11-2.0 
-lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 
-lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype   -lgnomeui-2 -lSM 
-lICE -lbonoboui-2 -lgnome-2 -lpopt -lbonobo-2 -lbonobo-activation -lORBit-2 
-lgnomecanvas-2 -lart_lgpl_2 -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 
-latk-1.0 -lcairo -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lfontconfig -lfreetype 
-lgdk_pixbuf-2.0 -lgnomevfs-2 -lgconf-2 -lgthread-2.0 -lgmodule-2.0 
-lgobject-2.0 -lglib-2.0  -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE  -lm 
-ltinfo -lnsl   -lacl -lattr -lgpm -ldl   -Wl,-E 
-Wl,-rpath,/usr/lib/perl5/5.18.1/x86_64-linux-thread-multi/CORE  
-L/usr/local/lib64 -fstack-protector  
-L/usr/lib/perl5/5.18.1/x86_64-linux-thread-multi/CORE -lperl -lm -ldl -lcrypt 
-lpthread -L/usr/lib64/python2.7/config -lpython2.7 -lpthread -ldl -lutil -lm 
-Xlinker -export-dynamic  -L/usr/lib64 -ltcl8.6 -ldl -lpthread -lieee -lm 
-lruby2.0 -lpthread -lrt -ldl -lcrypt -lm  -L/usr/lib64   

Raspunde prin e-mail lui