To: vim_dev@googlegroups.com Subject: Patch 8.0.0372 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.0.0372 Problem: More options are not always defined. Solution: Consistently define all possible options. Files: src/option.c, src/testdir/test_expand_dllpath.vim *** ../vim-8.0.0371/src/option.c 2017-02-25 21:37:53.872571889 +0100 --- src/option.c 2017-02-25 22:08:40.155918120 +0100 *************** *** 559,569 **** {(char_u *)0L, (char_u *)0L} #endif SCRIPTID_INIT}, - #ifdef FEAT_AUTOCHDIR {"autochdir", "acd", P_BOOL|P_VI_DEF, (char_u *)&p_acd, PV_NONE, ! {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, #endif {"autoindent", "ai", P_BOOL|P_VI_DEF, (char_u *)&p_ai, PV_AI, {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, --- 559,573 ---- {(char_u *)0L, (char_u *)0L} #endif SCRIPTID_INIT}, {"autochdir", "acd", P_BOOL|P_VI_DEF, + #ifdef FEAT_AUTOCHDIR (char_u *)&p_acd, PV_NONE, ! {(char_u *)FALSE, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)0L, (char_u *)0L} #endif + SCRIPTID_INIT}, {"autoindent", "ai", P_BOOL|P_VI_DEF, (char_u *)&p_ai, PV_AI, {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, *************** *** 1210,1271 **** {"flash", "fl", P_BOOL|P_VI_DEF, (char_u *)NULL, PV_NONE, {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, - #ifdef FEAT_FOLDING {"foldclose", "fcl", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP|P_RWIN, (char_u *)&p_fcl, PV_NONE, ! {(char_u *)"", (char_u *)0L} SCRIPTID_INIT}, {"foldcolumn", "fdc", P_NUM|P_VI_DEF|P_RWIN, (char_u *)VAR_WIN, PV_FDC, ! {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, {"foldenable", "fen", P_BOOL|P_VI_DEF|P_RWIN, (char_u *)VAR_WIN, PV_FEN, ! {(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT}, {"foldexpr", "fde", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN, ! # ifdef FEAT_EVAL (char_u *)VAR_WIN, PV_FDE, {(char_u *)"0", (char_u *)NULL} ! # else (char_u *)NULL, PV_NONE, {(char_u *)NULL, (char_u *)0L} ! # endif SCRIPTID_INIT}, {"foldignore", "fdi", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN, (char_u *)VAR_WIN, PV_FDI, ! {(char_u *)"#", (char_u *)NULL} SCRIPTID_INIT}, {"foldlevel", "fdl", P_NUM|P_VI_DEF|P_RWIN, (char_u *)VAR_WIN, PV_FDL, ! {(char_u *)0L, (char_u *)0L} SCRIPTID_INIT}, {"foldlevelstart","fdls", P_NUM|P_VI_DEF|P_CURSWANT, (char_u *)&p_fdls, PV_NONE, ! {(char_u *)-1L, (char_u *)0L} SCRIPTID_INIT}, {"foldmarker", "fmr", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF| P_RWIN|P_ONECOMMA|P_NODUP, (char_u *)VAR_WIN, PV_FMR, {(char_u *)"{{{,}}}", (char_u *)NULL} SCRIPTID_INIT}, {"foldmethod", "fdm", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN, (char_u *)VAR_WIN, PV_FDM, ! {(char_u *)"manual", (char_u *)NULL} SCRIPTID_INIT}, {"foldminlines","fml", P_NUM|P_VI_DEF|P_RWIN, (char_u *)VAR_WIN, PV_FML, ! {(char_u *)1L, (char_u *)0L} SCRIPTID_INIT}, {"foldnestmax", "fdn", P_NUM|P_VI_DEF|P_RWIN, (char_u *)VAR_WIN, PV_FDN, ! {(char_u *)20L, (char_u *)0L} SCRIPTID_INIT}, {"foldopen", "fdo", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP|P_CURSWANT, (char_u *)&p_fdo, PV_NONE, {(char_u *)"block,hor,mark,percent,quickfix,search,tag,undo", ! (char_u *)0L} SCRIPTID_INIT}, {"foldtext", "fdt", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN, ! # ifdef FEAT_EVAL (char_u *)VAR_WIN, PV_FDT, {(char_u *)"foldtext()", (char_u *)NULL} ! # else (char_u *)NULL, PV_NONE, {(char_u *)NULL, (char_u *)0L} - # endif - SCRIPTID_INIT}, #endif {"formatexpr", "fex", P_STRING|P_ALLOCED|P_VI_DEF|P_VIM, #ifdef FEAT_EVAL (char_u *)&p_fex, PV_FEX, --- 1214,1338 ---- {"flash", "fl", P_BOOL|P_VI_DEF, (char_u *)NULL, PV_NONE, {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, {"foldclose", "fcl", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP|P_RWIN, + #ifdef FEAT_FOLDING (char_u *)&p_fcl, PV_NONE, ! {(char_u *)"", (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldcolumn", "fdc", P_NUM|P_VI_DEF|P_RWIN, + #ifdef FEAT_FOLDING (char_u *)VAR_WIN, PV_FDC, ! {(char_u *)FALSE, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldenable", "fen", P_BOOL|P_VI_DEF|P_RWIN, + #ifdef FEAT_FOLDING (char_u *)VAR_WIN, PV_FEN, ! {(char_u *)TRUE, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldexpr", "fde", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN, ! #if defined(FEAT_FOLDING) && defined(FEAT_EVAL) (char_u *)VAR_WIN, PV_FDE, {(char_u *)"0", (char_u *)NULL} ! #else (char_u *)NULL, PV_NONE, {(char_u *)NULL, (char_u *)0L} ! #endif SCRIPTID_INIT}, {"foldignore", "fdi", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN, + #ifdef FEAT_FOLDING (char_u *)VAR_WIN, PV_FDI, ! {(char_u *)"#", (char_u *)NULL} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldlevel", "fdl", P_NUM|P_VI_DEF|P_RWIN, + #ifdef FEAT_FOLDING (char_u *)VAR_WIN, PV_FDL, ! {(char_u *)0L, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldlevelstart","fdls", P_NUM|P_VI_DEF|P_CURSWANT, + #ifdef FEAT_FOLDING (char_u *)&p_fdls, PV_NONE, ! {(char_u *)-1L, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldmarker", "fmr", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF| + #ifdef FEAT_FOLDING P_RWIN|P_ONECOMMA|P_NODUP, (char_u *)VAR_WIN, PV_FMR, {(char_u *)"{{{,}}}", (char_u *)NULL} + #else + (char_u *)NULL, PV_NONE, + {(char_u *)NULL, (char_u *)0L} + #endif SCRIPTID_INIT}, {"foldmethod", "fdm", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN, + #ifdef FEAT_FOLDING (char_u *)VAR_WIN, PV_FDM, ! {(char_u *)"manual", (char_u *)NULL} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldminlines","fml", P_NUM|P_VI_DEF|P_RWIN, + #ifdef FEAT_FOLDING (char_u *)VAR_WIN, PV_FML, ! {(char_u *)1L, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldnestmax", "fdn", P_NUM|P_VI_DEF|P_RWIN, + #ifdef FEAT_FOLDING (char_u *)VAR_WIN, PV_FDN, ! {(char_u *)20L, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldopen", "fdo", P_STRING|P_VI_DEF|P_ONECOMMA|P_NODUP|P_CURSWANT, + #ifdef FEAT_FOLDING (char_u *)&p_fdo, PV_NONE, {(char_u *)"block,hor,mark,percent,quickfix,search,tag,undo", ! (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} ! #endif ! SCRIPTID_INIT}, {"foldtext", "fdt", P_STRING|P_ALLOCED|P_VIM|P_VI_DEF|P_RWIN, ! #if defined(FEAT_FOLDING) && defined(FEAT_EVAL) (char_u *)VAR_WIN, PV_FDT, {(char_u *)"foldtext()", (char_u *)NULL} ! #else (char_u *)NULL, PV_NONE, {(char_u *)NULL, (char_u *)0L} #endif + SCRIPTID_INIT}, {"formatexpr", "fex", P_STRING|P_ALLOCED|P_VI_DEF|P_VIM, #ifdef FEAT_EVAL (char_u *)&p_fex, PV_FEX, *************** *** 1803,1819 **** {"loadplugins", "lpl", P_BOOL|P_VI_DEF, (char_u *)&p_lpl, PV_NONE, {(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT}, - #if defined(DYNAMIC_LUA) {"luadll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, (char_u *)&p_luadll, PV_NONE, {(char_u *)DYNAMIC_LUA_DLL, (char_u *)0L} ! SCRIPTID_INIT}, #endif ! #ifdef FEAT_GUI_MAC {"macatsui", NULL, P_BOOL|P_VI_DEF|P_RCLR, (char_u *)&p_macatsui, PV_NONE, ! {(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT}, #endif {"magic", NULL, P_BOOL|P_VI_DEF, (char_u *)&p_magic, PV_NONE, {(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT}, --- 1870,1893 ---- {"loadplugins", "lpl", P_BOOL|P_VI_DEF, (char_u *)&p_lpl, PV_NONE, {(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT}, {"luadll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, + #if defined(DYNAMIC_LUA) (char_u *)&p_luadll, PV_NONE, {(char_u *)DYNAMIC_LUA_DLL, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)"", (char_u *)0L} #endif ! SCRIPTID_INIT}, {"macatsui", NULL, P_BOOL|P_VI_DEF|P_RCLR, + #ifdef FEAT_GUI_MAC (char_u *)&p_macatsui, PV_NONE, ! {(char_u *)TRUE, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)"", (char_u *)0L} #endif + SCRIPTID_INIT}, {"magic", NULL, P_BOOL|P_VI_DEF, (char_u *)&p_magic, PV_NONE, {(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT}, *************** *** 2045,2056 **** (char_u *)".,/usr/include,,", #endif (char_u *)0L} SCRIPTID_INIT}, - #if defined(DYNAMIC_PERL) {"perldll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, (char_u *)&p_perldll, PV_NONE, {(char_u *)DYNAMIC_PERL_DLL, (char_u *)0L} ! SCRIPTID_INIT}, #endif {"preserveindent", "pi", P_BOOL|P_VI_DEF|P_VIM, (char_u *)&p_pi, PV_PI, {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, --- 2119,2133 ---- (char_u *)".,/usr/include,,", #endif (char_u *)0L} SCRIPTID_INIT}, {"perldll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, + #if defined(DYNAMIC_PERL) (char_u *)&p_perldll, PV_NONE, {(char_u *)DYNAMIC_PERL_DLL, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)0L, (char_u *)0L} #endif + SCRIPTID_INIT}, {"preserveindent", "pi", P_BOOL|P_VI_DEF|P_VIM, (char_u *)&p_pi, PV_PI, {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, *************** *** 2156,2173 **** (char_u *)NULL, PV_NONE, #endif {(char_u *)0L, (char_u *)0L} SCRIPTID_INIT}, - #if defined(DYNAMIC_PYTHON3) {"pythonthreedll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, (char_u *)&p_py3dll, PV_NONE, {(char_u *)DYNAMIC_PYTHON3_DLL, (char_u *)0L} ! SCRIPTID_INIT}, #endif ! #if defined(DYNAMIC_PYTHON) {"pythondll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, (char_u *)&p_pydll, PV_NONE, {(char_u *)DYNAMIC_PYTHON_DLL, (char_u *)0L} ! SCRIPTID_INIT}, #endif {"pyxversion", "pyx", P_NUM|P_VI_DEF|P_SECURE, #if defined(FEAT_PYTHON) || defined(FEAT_PYTHON3) (char_u *)&p_pyx, PV_NONE, --- 2233,2256 ---- (char_u *)NULL, PV_NONE, #endif {(char_u *)0L, (char_u *)0L} SCRIPTID_INIT}, {"pythonthreedll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, + #if defined(DYNAMIC_PYTHON3) (char_u *)&p_py3dll, PV_NONE, {(char_u *)DYNAMIC_PYTHON3_DLL, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} #endif ! SCRIPTID_INIT}, {"pythondll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, + #if defined(DYNAMIC_PYTHON) (char_u *)&p_pydll, PV_NONE, {(char_u *)DYNAMIC_PYTHON_DLL, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} #endif + SCRIPTID_INIT}, {"pyxversion", "pyx", P_NUM|P_VI_DEF|P_SECURE, #if defined(FEAT_PYTHON) || defined(FEAT_PYTHON3) (char_u *)&p_pyx, PV_NONE, *************** *** 2249,2260 **** {(char_u *)NULL, (char_u *)0L} #endif SCRIPTID_INIT}, - #if defined(DYNAMIC_RUBY) {"rubydll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, (char_u *)&p_rubydll, PV_NONE, {(char_u *)DYNAMIC_RUBY_DLL, (char_u *)0L} ! SCRIPTID_INIT}, #endif {"ruler", "ru", P_BOOL|P_VI_DEF|P_VIM|P_RSTAT, #ifdef FEAT_CMDL_INFO (char_u *)&p_ru, PV_NONE, --- 2332,2346 ---- {(char_u *)NULL, (char_u *)0L} #endif SCRIPTID_INIT}, {"rubydll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, + #if defined(DYNAMIC_RUBY) (char_u *)&p_rubydll, PV_NONE, {(char_u *)DYNAMIC_RUBY_DLL, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)NULL, (char_u *)0L} #endif + SCRIPTID_INIT}, {"ruler", "ru", P_BOOL|P_VI_DEF|P_VIM|P_RSTAT, #ifdef FEAT_CMDL_INFO (char_u *)&p_ru, PV_NONE, *************** *** 2642,2653 **** {"tagstack", "tgst", P_BOOL|P_VI_DEF, (char_u *)&p_tgst, PV_NONE, {(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT}, - #if defined(DYNAMIC_TCL) {"tcldll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, (char_u *)&p_tcldll, PV_NONE, {(char_u *)DYNAMIC_TCL_DLL, (char_u *)0L} ! SCRIPTID_INIT}, #endif {"term", NULL, P_STRING|P_EXPAND|P_NODEFAULT|P_NO_MKRC|P_VI_DEF|P_RALL, (char_u *)&T_NAME, PV_NONE, {(char_u *)"", (char_u *)0L} SCRIPTID_INIT}, --- 2728,2742 ---- {"tagstack", "tgst", P_BOOL|P_VI_DEF, (char_u *)&p_tgst, PV_NONE, {(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT}, {"tcldll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, + #if defined(DYNAMIC_TCL) (char_u *)&p_tcldll, PV_NONE, {(char_u *)DYNAMIC_TCL_DLL, (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)0L, (char_u *)0L} #endif + SCRIPTID_INIT}, {"term", NULL, P_STRING|P_EXPAND|P_NODEFAULT|P_NO_MKRC|P_VI_DEF|P_RALL, (char_u *)&T_NAME, PV_NONE, {(char_u *)"", (char_u *)0L} SCRIPTID_INIT}, *************** *** 2742,2758 **** (char_u *)NULL, PV_NONE, #endif {(char_u *)"", (char_u *)0L} SCRIPTID_INIT}, - #if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_W32) {"toolbar", "tb", P_STRING|P_ONECOMMA|P_VI_DEF|P_NODUP, (char_u *)&p_toolbar, PV_NONE, {(char_u *)"icons,tooltips", (char_u *)0L} ! SCRIPTID_INIT}, #endif ! #if defined(FEAT_TOOLBAR) && defined(FEAT_GUI_GTK) {"toolbariconsize", "tbis", P_STRING|P_VI_DEF, (char_u *)&p_tbis, PV_NONE, ! {(char_u *)"small", (char_u *)0L} SCRIPTID_INIT}, #endif {"ttimeout", NULL, P_BOOL|P_VI_DEF|P_VIM, (char_u *)&p_ttimeout, PV_NONE, {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, --- 2831,2854 ---- (char_u *)NULL, PV_NONE, #endif {(char_u *)"", (char_u *)0L} SCRIPTID_INIT}, {"toolbar", "tb", P_STRING|P_ONECOMMA|P_VI_DEF|P_NODUP, + #if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_W32) (char_u *)&p_toolbar, PV_NONE, {(char_u *)"icons,tooltips", (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)0L, (char_u *)0L} #endif ! SCRIPTID_INIT}, {"toolbariconsize", "tbis", P_STRING|P_VI_DEF, + #if defined(FEAT_TOOLBAR) && defined(FEAT_GUI_GTK) (char_u *)&p_tbis, PV_NONE, ! {(char_u *)"small", (char_u *)0L} ! #else ! (char_u *)NULL, PV_NONE, ! {(char_u *)0L, (char_u *)0L} #endif + SCRIPTID_INIT}, {"ttimeout", NULL, P_BOOL|P_VI_DEF|P_VIM, (char_u *)&p_ttimeout, PV_NONE, {(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT}, *** ../vim-8.0.0371/src/testdir/test_expand_dllpath.vim 2016-07-21 20:04:54.000000000 +0200 --- src/testdir/test_expand_dllpath.vim 2017-02-25 22:14:49.477288503 +0100 *************** *** 14,20 **** endfunc func s:generate_test_if_exists(optname) ! if exists('&' . a:optname) execute join([ \ 'func Test_expand_' . a:optname . '()', \ ' call s:test_expand_dllpath("' . a:optname . '")', --- 14,20 ---- endfunc func s:generate_test_if_exists(optname) ! if exists('+' . a:optname) execute join([ \ 'func Test_expand_' . a:optname . '()', \ ' call s:test_expand_dllpath("' . a:optname . '")', *** ../vim-8.0.0371/src/version.c 2017-02-25 21:39:13.300021243 +0100 --- src/version.c 2017-02-25 21:49:03.335961364 +0100 *************** *** 766,767 **** --- 766,769 ---- { /* Add new patch number below this line */ + /**/ + 372, /**/ -- Bypasses are devices that allow some people to dash from point A to point B very fast while other people dash from point B to point A very fast. People living at point C, being a point directly in between, are often given to wonder what's so great about point A that so many people from point B are so keen to get there and what's so great about point B that so many people from point A are so keen to get there. They often wish that people would just once and for all work out where the hell they wanted to be. -- Douglas Adams, "The Hitchhiker's Guide to the Galaxy" /// Bram Moolenaar -- Bram@Moolenaar.net -- 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 ///