From: Hirohito Higashi Date: Sun, 19 Apr 2026 21:51:51 +0000 (+0000) Subject: patch 9.2.0369: multiple definitions of STRING_INIT macro X-Git-Tag: v9.2.0369^0 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6ecff78129307676f74c68bd08648465f980c6fd;p=thirdparty%2Fvim.git patch 9.2.0369: multiple definitions of STRING_INIT macro Problem: multiple definitions of STRING_INIT macro Solution: Refactor use of STRING_INIT and use a single STR_LITERAL_INIT() macro instead (Hirohito Higashi) Consolidate the ad-hoc STRING_INIT() macros that were defined and used locally in multiple source files. Define a single STR_LITERAL_INIT() macro in macros.h and replace all previous STRING_INIT() usages with it. No functional change. related: #19999 closes: #20023 Signed-off-by: Hirohito Higashi Signed-off-by: Christian Brabandt --- diff --git a/src/clientserver.c b/src/clientserver.c index ae5130dd3e..9186f4db16 100644 --- a/src/clientserver.c +++ b/src/clientserver.c @@ -677,13 +677,10 @@ build_drop_cmd( string_T cdp; char_u *cwd; // reset wildignore temporarily -# define STRING_INIT(s) \ - {(char_u *)(s), STRLEN_LITERAL(s)} const string_T wig[] = { - STRING_INIT(":let g:_wig=&wig|set wig="), - STRING_INIT(":let &wig=g:_wig|unlet g:_wig") + STR_LITERAL_INIT(":let g:_wig=&wig|set wig="), + STR_LITERAL_INIT(":let &wig=g:_wig|unlet g:_wig") }; -# undef STRING_INIT if (filec > 0 && filev[0][0] == '+') { diff --git a/src/insexpand.c b/src/insexpand.c index 72c3237776..7545e9b4ec 100644 --- a/src/insexpand.c +++ b/src/insexpand.c @@ -67,30 +67,27 @@ static char *ctrl_x_msgs[] = }; #if defined(FEAT_COMPL_FUNC) || defined(FEAT_EVAL) -# define STRING_INIT(s) \ - {(char_u *)(s), STRLEN_LITERAL(s)} static string_T ctrl_x_mode_names[] = { - STRING_INIT("keyword"), - STRING_INIT("ctrl_x"), - STRING_INIT("scroll"), - STRING_INIT("whole_line"), - STRING_INIT("files"), - STRING_INIT("tags"), - STRING_INIT("path_patterns"), - STRING_INIT("path_defines"), - STRING_INIT("unknown"), // CTRL_X_FINISHED - STRING_INIT("dictionary"), - STRING_INIT("thesaurus"), - STRING_INIT("cmdline"), - STRING_INIT("function"), - STRING_INIT("omni"), - STRING_INIT("spell"), + STR_LITERAL_INIT("keyword"), + STR_LITERAL_INIT("ctrl_x"), + STR_LITERAL_INIT("scroll"), + STR_LITERAL_INIT("whole_line"), + STR_LITERAL_INIT("files"), + STR_LITERAL_INIT("tags"), + STR_LITERAL_INIT("path_patterns"), + STR_LITERAL_INIT("path_defines"), + STR_LITERAL_INIT("unknown"), // CTRL_X_FINISHED + STR_LITERAL_INIT("dictionary"), + STR_LITERAL_INIT("thesaurus"), + STR_LITERAL_INIT("cmdline"), + STR_LITERAL_INIT("function"), + STR_LITERAL_INIT("omni"), + STR_LITERAL_INIT("spell"), {NULL, 0}, // CTRL_X_LOCAL_MSG is only used in "ctrl_x_msgs" - STRING_INIT("eval"), - STRING_INIT("cmdline"), - STRING_INIT("register"), + STR_LITERAL_INIT("eval"), + STR_LITERAL_INIT("cmdline"), + STR_LITERAL_INIT("register"), }; -# undef STRING_INIT #endif /* diff --git a/src/macros.h b/src/macros.h index 9007b5b37a..5fdcfdb2a8 100644 --- a/src/macros.h +++ b/src/macros.h @@ -373,6 +373,9 @@ s.length = 0; \ } while (0) +#define STR_LITERAL_INIT(s) \ + {(char_u *)(s), STRLEN_LITERAL(s)} + // Whether a command index indicates a user command. #define IS_USER_CMDIDX(idx) ((int)(idx) < 0) diff --git a/src/misc2.c b/src/misc2.c index 1d3a35b062..aca4d3c93b 100644 --- a/src/misc2.c +++ b/src/misc2.c @@ -915,8 +915,6 @@ static char_u modifier_keys_table[] = NUL }; -#define STRING_INIT(s) \ - {(char_u *)(s), STRLEN_LITERAL(s)} static struct key_name_entry { int enabled; // is this entry available (TRUE/FALSE)? @@ -926,200 +924,199 @@ static struct key_name_entry } key_names_table[] = // Must be sorted by the 'name.string' field in ascending order because it is used by bsearch()! { - {TRUE, K_BS, STRING_INIT("BackSpace"), TRUE}, - {TRUE, '|', STRING_INIT("Bar"), FALSE}, - {TRUE, K_BS, STRING_INIT("BS"), FALSE}, - {TRUE, '\\', STRING_INIT("Bslash"), FALSE}, - {TRUE, K_COMMAND, STRING_INIT("Cmd"), FALSE}, - {TRUE, CAR, STRING_INIT("CR"), FALSE}, - {TRUE, CSI, STRING_INIT("CSI"), FALSE}, - {TRUE, K_CURSORHOLD, STRING_INIT("CursorHold"), FALSE}, + {TRUE, K_BS, STR_LITERAL_INIT("BackSpace"), TRUE}, + {TRUE, '|', STR_LITERAL_INIT("Bar"), FALSE}, + {TRUE, K_BS, STR_LITERAL_INIT("BS"), FALSE}, + {TRUE, '\\', STR_LITERAL_INIT("Bslash"), FALSE}, + {TRUE, K_COMMAND, STR_LITERAL_INIT("Cmd"), FALSE}, + {TRUE, CAR, STR_LITERAL_INIT("CR"), FALSE}, + {TRUE, CSI, STR_LITERAL_INIT("CSI"), FALSE}, + {TRUE, K_CURSORHOLD, STR_LITERAL_INIT("CursorHold"), FALSE}, { #ifdef FEAT_MOUSE_DEC TRUE, #else FALSE, #endif - K_DEC_MOUSE, STRING_INIT("DecMouse"), FALSE}, - {TRUE, K_DEL, STRING_INIT("Del"), FALSE}, - {TRUE, K_DEL, STRING_INIT("Delete"), TRUE}, - {TRUE, K_DOWN, STRING_INIT("Down"), FALSE}, - {TRUE, K_DROP, STRING_INIT("Drop"), FALSE}, - {TRUE, K_END, STRING_INIT("End"), FALSE}, - {TRUE, CAR, STRING_INIT("Enter"), TRUE}, - {TRUE, ESC, STRING_INIT("Esc"), FALSE}, - - {TRUE, K_F1, STRING_INIT("F1"), FALSE}, - {TRUE, K_F10, STRING_INIT("F10"), FALSE}, - {TRUE, K_F11, STRING_INIT("F11"), FALSE}, - {TRUE, K_F12, STRING_INIT("F12"), FALSE}, - {TRUE, K_F13, STRING_INIT("F13"), FALSE}, - {TRUE, K_F14, STRING_INIT("F14"), FALSE}, - {TRUE, K_F15, STRING_INIT("F15"), FALSE}, - {TRUE, K_F16, STRING_INIT("F16"), FALSE}, - {TRUE, K_F17, STRING_INIT("F17"), FALSE}, - {TRUE, K_F18, STRING_INIT("F18"), FALSE}, - {TRUE, K_F19, STRING_INIT("F19"), FALSE}, - - {TRUE, K_F2, STRING_INIT("F2"), FALSE}, - {TRUE, K_F20, STRING_INIT("F20"), FALSE}, - {TRUE, K_F21, STRING_INIT("F21"), FALSE}, - {TRUE, K_F22, STRING_INIT("F22"), FALSE}, - {TRUE, K_F23, STRING_INIT("F23"), FALSE}, - {TRUE, K_F24, STRING_INIT("F24"), FALSE}, - {TRUE, K_F25, STRING_INIT("F25"), FALSE}, - {TRUE, K_F26, STRING_INIT("F26"), FALSE}, - {TRUE, K_F27, STRING_INIT("F27"), FALSE}, - {TRUE, K_F28, STRING_INIT("F28"), FALSE}, - {TRUE, K_F29, STRING_INIT("F29"), FALSE}, - - {TRUE, K_F3, STRING_INIT("F3"), FALSE}, - {TRUE, K_F30, STRING_INIT("F30"), FALSE}, - {TRUE, K_F31, STRING_INIT("F31"), FALSE}, - {TRUE, K_F32, STRING_INIT("F32"), FALSE}, - {TRUE, K_F33, STRING_INIT("F33"), FALSE}, - {TRUE, K_F34, STRING_INIT("F34"), FALSE}, - {TRUE, K_F35, STRING_INIT("F35"), FALSE}, - {TRUE, K_F36, STRING_INIT("F36"), FALSE}, - {TRUE, K_F37, STRING_INIT("F37"), FALSE}, - - {TRUE, K_F4, STRING_INIT("F4"), FALSE}, - {TRUE, K_F5, STRING_INIT("F5"), FALSE}, - {TRUE, K_F6, STRING_INIT("F6"), FALSE}, - {TRUE, K_F7, STRING_INIT("F7"), FALSE}, - {TRUE, K_F8, STRING_INIT("F8"), FALSE}, - {TRUE, K_F9, STRING_INIT("F9"), FALSE}, - - {TRUE, K_FOCUSGAINED, STRING_INIT("FocusGained"), FALSE}, - {TRUE, K_FOCUSLOST, STRING_INIT("FocusLost"), FALSE}, - {TRUE, K_HELP, STRING_INIT("Help"), FALSE}, - {TRUE, K_HOME, STRING_INIT("Home"), FALSE}, - {TRUE, K_IGNORE, STRING_INIT("Ignore"), FALSE}, - {TRUE, K_INS, STRING_INIT("Ins"), TRUE}, - {TRUE, K_INS, STRING_INIT("Insert"), FALSE}, + K_DEC_MOUSE, STR_LITERAL_INIT("DecMouse"), FALSE}, + {TRUE, K_DEL, STR_LITERAL_INIT("Del"), FALSE}, + {TRUE, K_DEL, STR_LITERAL_INIT("Delete"), TRUE}, + {TRUE, K_DOWN, STR_LITERAL_INIT("Down"), FALSE}, + {TRUE, K_DROP, STR_LITERAL_INIT("Drop"), FALSE}, + {TRUE, K_END, STR_LITERAL_INIT("End"), FALSE}, + {TRUE, CAR, STR_LITERAL_INIT("Enter"), TRUE}, + {TRUE, ESC, STR_LITERAL_INIT("Esc"), FALSE}, + + {TRUE, K_F1, STR_LITERAL_INIT("F1"), FALSE}, + {TRUE, K_F10, STR_LITERAL_INIT("F10"), FALSE}, + {TRUE, K_F11, STR_LITERAL_INIT("F11"), FALSE}, + {TRUE, K_F12, STR_LITERAL_INIT("F12"), FALSE}, + {TRUE, K_F13, STR_LITERAL_INIT("F13"), FALSE}, + {TRUE, K_F14, STR_LITERAL_INIT("F14"), FALSE}, + {TRUE, K_F15, STR_LITERAL_INIT("F15"), FALSE}, + {TRUE, K_F16, STR_LITERAL_INIT("F16"), FALSE}, + {TRUE, K_F17, STR_LITERAL_INIT("F17"), FALSE}, + {TRUE, K_F18, STR_LITERAL_INIT("F18"), FALSE}, + {TRUE, K_F19, STR_LITERAL_INIT("F19"), FALSE}, + + {TRUE, K_F2, STR_LITERAL_INIT("F2"), FALSE}, + {TRUE, K_F20, STR_LITERAL_INIT("F20"), FALSE}, + {TRUE, K_F21, STR_LITERAL_INIT("F21"), FALSE}, + {TRUE, K_F22, STR_LITERAL_INIT("F22"), FALSE}, + {TRUE, K_F23, STR_LITERAL_INIT("F23"), FALSE}, + {TRUE, K_F24, STR_LITERAL_INIT("F24"), FALSE}, + {TRUE, K_F25, STR_LITERAL_INIT("F25"), FALSE}, + {TRUE, K_F26, STR_LITERAL_INIT("F26"), FALSE}, + {TRUE, K_F27, STR_LITERAL_INIT("F27"), FALSE}, + {TRUE, K_F28, STR_LITERAL_INIT("F28"), FALSE}, + {TRUE, K_F29, STR_LITERAL_INIT("F29"), FALSE}, + + {TRUE, K_F3, STR_LITERAL_INIT("F3"), FALSE}, + {TRUE, K_F30, STR_LITERAL_INIT("F30"), FALSE}, + {TRUE, K_F31, STR_LITERAL_INIT("F31"), FALSE}, + {TRUE, K_F32, STR_LITERAL_INIT("F32"), FALSE}, + {TRUE, K_F33, STR_LITERAL_INIT("F33"), FALSE}, + {TRUE, K_F34, STR_LITERAL_INIT("F34"), FALSE}, + {TRUE, K_F35, STR_LITERAL_INIT("F35"), FALSE}, + {TRUE, K_F36, STR_LITERAL_INIT("F36"), FALSE}, + {TRUE, K_F37, STR_LITERAL_INIT("F37"), FALSE}, + + {TRUE, K_F4, STR_LITERAL_INIT("F4"), FALSE}, + {TRUE, K_F5, STR_LITERAL_INIT("F5"), FALSE}, + {TRUE, K_F6, STR_LITERAL_INIT("F6"), FALSE}, + {TRUE, K_F7, STR_LITERAL_INIT("F7"), FALSE}, + {TRUE, K_F8, STR_LITERAL_INIT("F8"), FALSE}, + {TRUE, K_F9, STR_LITERAL_INIT("F9"), FALSE}, + + {TRUE, K_FOCUSGAINED, STR_LITERAL_INIT("FocusGained"), FALSE}, + {TRUE, K_FOCUSLOST, STR_LITERAL_INIT("FocusLost"), FALSE}, + {TRUE, K_HELP, STR_LITERAL_INIT("Help"), FALSE}, + {TRUE, K_HOME, STR_LITERAL_INIT("Home"), FALSE}, + {TRUE, K_IGNORE, STR_LITERAL_INIT("Ignore"), FALSE}, + {TRUE, K_INS, STR_LITERAL_INIT("Ins"), TRUE}, + {TRUE, K_INS, STR_LITERAL_INIT("Insert"), FALSE}, { #ifdef FEAT_MOUSE_JSB TRUE, #else FALSE, #endif - K_JSBTERM_MOUSE, STRING_INIT("JsbMouse"), FALSE}, - {TRUE, K_K0, STRING_INIT("k0"), FALSE}, - {TRUE, K_K1, STRING_INIT("k1"), FALSE}, - {TRUE, K_K2, STRING_INIT("k2"), FALSE}, - {TRUE, K_K3, STRING_INIT("k3"), FALSE}, - {TRUE, K_K4, STRING_INIT("k4"), FALSE}, - {TRUE, K_K5, STRING_INIT("k5"), FALSE}, - {TRUE, K_K6, STRING_INIT("k6"), FALSE}, - {TRUE, K_K7, STRING_INIT("k7"), FALSE}, - {TRUE, K_K8, STRING_INIT("k8"), FALSE}, - {TRUE, K_K9, STRING_INIT("k9"), FALSE}, - - {TRUE, K_KDEL, STRING_INIT("kDel"), FALSE}, - {TRUE, K_KDIVIDE, STRING_INIT("kDivide"), FALSE}, - {TRUE, K_KEND, STRING_INIT("kEnd"), FALSE}, - {TRUE, K_KENTER, STRING_INIT("kEnter"), FALSE}, - {TRUE, K_KHOME, STRING_INIT("kHome"), FALSE}, - {TRUE, K_KINS, STRING_INIT("kInsert"), FALSE}, - {TRUE, K_KMINUS, STRING_INIT("kMinus"), FALSE}, - {TRUE, K_KMULTIPLY, STRING_INIT("kMultiply"), FALSE}, - {TRUE, K_KPAGEDOWN, STRING_INIT("kPageDown"), FALSE}, - {TRUE, K_KPAGEUP, STRING_INIT("kPageUp"), FALSE}, - {TRUE, K_KPLUS, STRING_INIT("kPlus"), FALSE}, - {TRUE, K_KPOINT, STRING_INIT("kPoint"), FALSE}, - {TRUE, K_LEFT, STRING_INIT("Left"), FALSE}, - {TRUE, K_LEFTDRAG, STRING_INIT("LeftDrag"), FALSE}, - {TRUE, K_LEFTMOUSE, STRING_INIT("LeftMouse"), FALSE}, - {TRUE, K_LEFTMOUSE_NM, STRING_INIT("LeftMouseNM"), FALSE}, - {TRUE, K_LEFTRELEASE, STRING_INIT("LeftRelease"), FALSE}, - {TRUE, K_LEFTRELEASE_NM, STRING_INIT("LeftReleaseNM"), FALSE}, - {TRUE, NL, STRING_INIT("LF"), TRUE}, - {TRUE, NL, STRING_INIT("LineFeed"), TRUE}, - {TRUE, '<', STRING_INIT("lt"), FALSE}, - {TRUE, K_MIDDLEDRAG, STRING_INIT("MiddleDrag"), FALSE}, - {TRUE, K_MIDDLEMOUSE, STRING_INIT("MiddleMouse"), FALSE}, - {TRUE, K_MIDDLERELEASE, STRING_INIT("MiddleRelease"), FALSE}, - {TRUE, K_MOUSE, STRING_INIT("Mouse"), FALSE}, - {TRUE, K_MOUSEDOWN, STRING_INIT("MouseDown"), TRUE}, - {TRUE, K_MOUSEMOVE, STRING_INIT("MouseMove"), FALSE}, - {TRUE, K_MOUSEUP, STRING_INIT("MouseUp"), TRUE}, + K_JSBTERM_MOUSE, STR_LITERAL_INIT("JsbMouse"), FALSE}, + {TRUE, K_K0, STR_LITERAL_INIT("k0"), FALSE}, + {TRUE, K_K1, STR_LITERAL_INIT("k1"), FALSE}, + {TRUE, K_K2, STR_LITERAL_INIT("k2"), FALSE}, + {TRUE, K_K3, STR_LITERAL_INIT("k3"), FALSE}, + {TRUE, K_K4, STR_LITERAL_INIT("k4"), FALSE}, + {TRUE, K_K5, STR_LITERAL_INIT("k5"), FALSE}, + {TRUE, K_K6, STR_LITERAL_INIT("k6"), FALSE}, + {TRUE, K_K7, STR_LITERAL_INIT("k7"), FALSE}, + {TRUE, K_K8, STR_LITERAL_INIT("k8"), FALSE}, + {TRUE, K_K9, STR_LITERAL_INIT("k9"), FALSE}, + + {TRUE, K_KDEL, STR_LITERAL_INIT("kDel"), FALSE}, + {TRUE, K_KDIVIDE, STR_LITERAL_INIT("kDivide"), FALSE}, + {TRUE, K_KEND, STR_LITERAL_INIT("kEnd"), FALSE}, + {TRUE, K_KENTER, STR_LITERAL_INIT("kEnter"), FALSE}, + {TRUE, K_KHOME, STR_LITERAL_INIT("kHome"), FALSE}, + {TRUE, K_KINS, STR_LITERAL_INIT("kInsert"), FALSE}, + {TRUE, K_KMINUS, STR_LITERAL_INIT("kMinus"), FALSE}, + {TRUE, K_KMULTIPLY, STR_LITERAL_INIT("kMultiply"), FALSE}, + {TRUE, K_KPAGEDOWN, STR_LITERAL_INIT("kPageDown"), FALSE}, + {TRUE, K_KPAGEUP, STR_LITERAL_INIT("kPageUp"), FALSE}, + {TRUE, K_KPLUS, STR_LITERAL_INIT("kPlus"), FALSE}, + {TRUE, K_KPOINT, STR_LITERAL_INIT("kPoint"), FALSE}, + {TRUE, K_LEFT, STR_LITERAL_INIT("Left"), FALSE}, + {TRUE, K_LEFTDRAG, STR_LITERAL_INIT("LeftDrag"), FALSE}, + {TRUE, K_LEFTMOUSE, STR_LITERAL_INIT("LeftMouse"), FALSE}, + {TRUE, K_LEFTMOUSE_NM, STR_LITERAL_INIT("LeftMouseNM"), FALSE}, + {TRUE, K_LEFTRELEASE, STR_LITERAL_INIT("LeftRelease"), FALSE}, + {TRUE, K_LEFTRELEASE_NM, STR_LITERAL_INIT("LeftReleaseNM"), FALSE}, + {TRUE, NL, STR_LITERAL_INIT("LF"), TRUE}, + {TRUE, NL, STR_LITERAL_INIT("LineFeed"), TRUE}, + {TRUE, '<', STR_LITERAL_INIT("lt"), FALSE}, + {TRUE, K_MIDDLEDRAG, STR_LITERAL_INIT("MiddleDrag"), FALSE}, + {TRUE, K_MIDDLEMOUSE, STR_LITERAL_INIT("MiddleMouse"), FALSE}, + {TRUE, K_MIDDLERELEASE, STR_LITERAL_INIT("MiddleRelease"), FALSE}, + {TRUE, K_MOUSE, STR_LITERAL_INIT("Mouse"), FALSE}, + {TRUE, K_MOUSEDOWN, STR_LITERAL_INIT("MouseDown"), TRUE}, + {TRUE, K_MOUSEMOVE, STR_LITERAL_INIT("MouseMove"), FALSE}, + {TRUE, K_MOUSEUP, STR_LITERAL_INIT("MouseUp"), TRUE}, { #ifdef FEAT_MOUSE_NET TRUE, #else FALSE, #endif - K_NETTERM_MOUSE, STRING_INIT("NetMouse"), FALSE}, - {TRUE, NL, STRING_INIT("NewLine"), TRUE}, - {TRUE, NL, STRING_INIT("NL"), FALSE}, - {TRUE, K_ZERO, STRING_INIT("Nul"), FALSE}, - {TRUE, OSC, STRING_INIT("OSC"), FALSE}, - {TRUE, K_PAGEDOWN, STRING_INIT("PageDown"), FALSE}, - {TRUE, K_PAGEUP, STRING_INIT("PageUp"), FALSE}, - {TRUE, K_PE, STRING_INIT("PasteEnd"), FALSE}, - {TRUE, K_PS, STRING_INIT("PasteStart"), FALSE}, - {TRUE, K_PLUG, STRING_INIT("Plug"), FALSE}, + K_NETTERM_MOUSE, STR_LITERAL_INIT("NetMouse"), FALSE}, + {TRUE, NL, STR_LITERAL_INIT("NewLine"), TRUE}, + {TRUE, NL, STR_LITERAL_INIT("NL"), FALSE}, + {TRUE, K_ZERO, STR_LITERAL_INIT("Nul"), FALSE}, + {TRUE, OSC, STR_LITERAL_INIT("OSC"), FALSE}, + {TRUE, K_PAGEDOWN, STR_LITERAL_INIT("PageDown"), FALSE}, + {TRUE, K_PAGEUP, STR_LITERAL_INIT("PageUp"), FALSE}, + {TRUE, K_PE, STR_LITERAL_INIT("PasteEnd"), FALSE}, + {TRUE, K_PS, STR_LITERAL_INIT("PasteStart"), FALSE}, + {TRUE, K_PLUG, STR_LITERAL_INIT("Plug"), FALSE}, { #ifdef FEAT_MOUSE_PTERM TRUE, #else FALSE, #endif - K_PTERM_MOUSE, STRING_INIT("PtermMouse"), FALSE}, - {TRUE, CAR, STRING_INIT("Return"), TRUE}, - {TRUE, K_RIGHT, STRING_INIT("Right"), FALSE}, - {TRUE, K_RIGHTDRAG, STRING_INIT("RightDrag"), FALSE}, - {TRUE, K_RIGHTMOUSE, STRING_INIT("RightMouse"), FALSE}, - {TRUE, K_RIGHTRELEASE, STRING_INIT("RightRelease"), FALSE}, - {TRUE, K_SCRIPT_COMMAND, STRING_INIT("ScriptCmd"), FALSE}, - {TRUE, K_MOUSEUP, STRING_INIT("ScrollWheelDown"), FALSE}, - {TRUE, K_MOUSERIGHT, STRING_INIT("ScrollWheelLeft"), FALSE}, - {TRUE, K_MOUSELEFT, STRING_INIT("ScrollWheelRight"), FALSE}, - {TRUE, K_MOUSEDOWN, STRING_INIT("ScrollWheelUp"), FALSE}, - {TRUE, K_SGR_MOUSE, STRING_INIT("SgrMouse"), FALSE}, - {TRUE, K_SGR_MOUSERELEASE, STRING_INIT("SgrMouseRelease"), FALSE}, + K_PTERM_MOUSE, STR_LITERAL_INIT("PtermMouse"), FALSE}, + {TRUE, CAR, STR_LITERAL_INIT("Return"), TRUE}, + {TRUE, K_RIGHT, STR_LITERAL_INIT("Right"), FALSE}, + {TRUE, K_RIGHTDRAG, STR_LITERAL_INIT("RightDrag"), FALSE}, + {TRUE, K_RIGHTMOUSE, STR_LITERAL_INIT("RightMouse"), FALSE}, + {TRUE, K_RIGHTRELEASE, STR_LITERAL_INIT("RightRelease"), FALSE}, + {TRUE, K_SCRIPT_COMMAND, STR_LITERAL_INIT("ScriptCmd"), FALSE}, + {TRUE, K_MOUSEUP, STR_LITERAL_INIT("ScrollWheelDown"), FALSE}, + {TRUE, K_MOUSERIGHT, STR_LITERAL_INIT("ScrollWheelLeft"), FALSE}, + {TRUE, K_MOUSELEFT, STR_LITERAL_INIT("ScrollWheelRight"), FALSE}, + {TRUE, K_MOUSEDOWN, STR_LITERAL_INIT("ScrollWheelUp"), FALSE}, + {TRUE, K_SGR_MOUSE, STR_LITERAL_INIT("SgrMouse"), FALSE}, + {TRUE, K_SGR_MOUSERELEASE, STR_LITERAL_INIT("SgrMouseRelease"), FALSE}, { #ifdef FEAT_EVAL TRUE, #else FALSE, #endif - K_SNR, STRING_INIT("SNR"), FALSE}, - {TRUE, ' ', STRING_INIT("Space"), FALSE}, - {TRUE, TAB, STRING_INIT("Tab"), FALSE}, - {TRUE, K_TAB, STRING_INIT("Tab"), FALSE}, - {TRUE, K_UNDO, STRING_INIT("Undo"), FALSE}, - {TRUE, K_UP, STRING_INIT("Up"), FALSE}, + K_SNR, STR_LITERAL_INIT("SNR"), FALSE}, + {TRUE, ' ', STR_LITERAL_INIT("Space"), FALSE}, + {TRUE, TAB, STR_LITERAL_INIT("Tab"), FALSE}, + {TRUE, K_TAB, STR_LITERAL_INIT("Tab"), FALSE}, + {TRUE, K_UNDO, STR_LITERAL_INIT("Undo"), FALSE}, + {TRUE, K_UP, STR_LITERAL_INIT("Up"), FALSE}, { #ifdef FEAT_MOUSE_URXVT TRUE, #else FALSE, #endif - K_URXVT_MOUSE, STRING_INIT("UrxvtMouse"), FALSE}, - {TRUE, K_X1DRAG, STRING_INIT("X1Drag"), FALSE}, - {TRUE, K_X1MOUSE, STRING_INIT("X1Mouse"), FALSE}, - {TRUE, K_X1RELEASE, STRING_INIT("X1Release"), FALSE}, - {TRUE, K_X2DRAG, STRING_INIT("X2Drag"), FALSE}, - {TRUE, K_X2MOUSE, STRING_INIT("X2Mouse"), FALSE}, - {TRUE, K_X2RELEASE, STRING_INIT("X2Release"), FALSE}, - {TRUE, K_CSI, STRING_INIT("xCSI"), FALSE}, - {TRUE, K_XDOWN, STRING_INIT("xDown"), FALSE}, - {TRUE, K_XEND, STRING_INIT("xEnd"), FALSE}, - {TRUE, K_XF1, STRING_INIT("xF1"), FALSE}, - {TRUE, K_XF2, STRING_INIT("xF2"), FALSE}, - {TRUE, K_XF3, STRING_INIT("xF3"), FALSE}, - {TRUE, K_XF4, STRING_INIT("xF4"), FALSE}, - {TRUE, K_XHOME, STRING_INIT("xHome"), FALSE}, - {TRUE, K_XLEFT, STRING_INIT("xLeft"), FALSE}, - {TRUE, K_OSC, STRING_INIT("xOSC"), FALSE}, - {TRUE, K_XRIGHT, STRING_INIT("xRight"), FALSE}, - {TRUE, K_XUP, STRING_INIT("xUp"), FALSE}, - {TRUE, K_ZEND, STRING_INIT("zEnd"), FALSE}, - {TRUE, K_ZHOME, STRING_INIT("zHome"), FALSE} + K_URXVT_MOUSE, STR_LITERAL_INIT("UrxvtMouse"), FALSE}, + {TRUE, K_X1DRAG, STR_LITERAL_INIT("X1Drag"), FALSE}, + {TRUE, K_X1MOUSE, STR_LITERAL_INIT("X1Mouse"), FALSE}, + {TRUE, K_X1RELEASE, STR_LITERAL_INIT("X1Release"), FALSE}, + {TRUE, K_X2DRAG, STR_LITERAL_INIT("X2Drag"), FALSE}, + {TRUE, K_X2MOUSE, STR_LITERAL_INIT("X2Mouse"), FALSE}, + {TRUE, K_X2RELEASE, STR_LITERAL_INIT("X2Release"), FALSE}, + {TRUE, K_CSI, STR_LITERAL_INIT("xCSI"), FALSE}, + {TRUE, K_XDOWN, STR_LITERAL_INIT("xDown"), FALSE}, + {TRUE, K_XEND, STR_LITERAL_INIT("xEnd"), FALSE}, + {TRUE, K_XF1, STR_LITERAL_INIT("xF1"), FALSE}, + {TRUE, K_XF2, STR_LITERAL_INIT("xF2"), FALSE}, + {TRUE, K_XF3, STR_LITERAL_INIT("xF3"), FALSE}, + {TRUE, K_XF4, STR_LITERAL_INIT("xF4"), FALSE}, + {TRUE, K_XHOME, STR_LITERAL_INIT("xHome"), FALSE}, + {TRUE, K_XLEFT, STR_LITERAL_INIT("xLeft"), FALSE}, + {TRUE, K_OSC, STR_LITERAL_INIT("xOSC"), FALSE}, + {TRUE, K_XRIGHT, STR_LITERAL_INIT("xRight"), FALSE}, + {TRUE, K_XUP, STR_LITERAL_INIT("xUp"), FALSE}, + {TRUE, K_ZEND, STR_LITERAL_INIT("zEnd"), FALSE}, + {TRUE, K_ZHOME, STR_LITERAL_INIT("zHome"), FALSE} // NOTE: When adding a long name update MAX_KEY_NAME_LEN. }; -#undef STRING_INIT /* * Return the modifier mask bit (MOD_MASK_*) which corresponds to the given @@ -2148,29 +2145,26 @@ cursorentry_T shape_table[SHAPE_IDX_COUNT] = * Table with names for mouse shapes. Keep in sync with all the tables for * mch_set_mouse_shape()!. */ -# define STRING_INIT(s) \ - {(char_u *)(s), STRLEN_LITERAL(s)} static string_T mshape_names[] = { - STRING_INIT("arrow"), // default, must be the first one - STRING_INIT("blank"), // hidden - STRING_INIT("beam"), - STRING_INIT("updown"), - STRING_INIT("udsizing"), - STRING_INIT("leftright"), - STRING_INIT("lrsizing"), - STRING_INIT("busy"), - STRING_INIT("no"), - STRING_INIT("crosshair"), - STRING_INIT("hand1"), - STRING_INIT("hand2"), - STRING_INIT("pencil"), - STRING_INIT("question"), - STRING_INIT("rightup-arrow"), - STRING_INIT("up-arrow"), + STR_LITERAL_INIT("arrow"), // default, must be the first one + STR_LITERAL_INIT("blank"), // hidden + STR_LITERAL_INIT("beam"), + STR_LITERAL_INIT("updown"), + STR_LITERAL_INIT("udsizing"), + STR_LITERAL_INIT("leftright"), + STR_LITERAL_INIT("lrsizing"), + STR_LITERAL_INIT("busy"), + STR_LITERAL_INIT("no"), + STR_LITERAL_INIT("crosshair"), + STR_LITERAL_INIT("hand1"), + STR_LITERAL_INIT("hand2"), + STR_LITERAL_INIT("pencil"), + STR_LITERAL_INIT("question"), + STR_LITERAL_INIT("rightup-arrow"), + STR_LITERAL_INIT("up-arrow"), {NULL, 0} }; -# undef STRING_INIT # define MSHAPE_NAMES_COUNT (ARRAY_LENGTH(mshape_names) - 1) # endif diff --git a/src/os_mswin.c b/src/os_mswin.c index 6eaf84f6ce..bfd0f1a386 100644 --- a/src/os_mswin.c +++ b/src/os_mswin.c @@ -2658,32 +2658,30 @@ struct charset_pair BYTE charset; }; -# define STRING_INIT(s) \ - {(char_u *)(s), STRLEN_LITERAL(s)} static struct charset_pair charset_pairs[] = { - {STRING_INIT("ANSI"), ANSI_CHARSET}, - {STRING_INIT("CHINESEBIG5"), CHINESEBIG5_CHARSET}, - {STRING_INIT("DEFAULT"), DEFAULT_CHARSET}, - {STRING_INIT("HANGEUL"), HANGEUL_CHARSET}, - {STRING_INIT("OEM"), OEM_CHARSET}, - {STRING_INIT("SHIFTJIS"), SHIFTJIS_CHARSET}, - {STRING_INIT("SYMBOL"), SYMBOL_CHARSET}, - {STRING_INIT("ARABIC"), ARABIC_CHARSET}, - {STRING_INIT("BALTIC"), BALTIC_CHARSET}, - {STRING_INIT("EASTEUROPE"), EASTEUROPE_CHARSET}, - {STRING_INIT("GB2312"), GB2312_CHARSET}, - {STRING_INIT("GREEK"), GREEK_CHARSET}, - {STRING_INIT("HEBREW"), HEBREW_CHARSET}, - {STRING_INIT("JOHAB"), JOHAB_CHARSET}, - {STRING_INIT("MAC"), MAC_CHARSET}, - {STRING_INIT("RUSSIAN"), RUSSIAN_CHARSET}, - {STRING_INIT("THAI"), THAI_CHARSET}, - {STRING_INIT("TURKISH"), TURKISH_CHARSET} + {STR_LITERAL_INIT("ANSI"), ANSI_CHARSET}, + {STR_LITERAL_INIT("CHINESEBIG5"), CHINESEBIG5_CHARSET}, + {STR_LITERAL_INIT("DEFAULT"), DEFAULT_CHARSET}, + {STR_LITERAL_INIT("HANGEUL"), HANGEUL_CHARSET}, + {STR_LITERAL_INIT("OEM"), OEM_CHARSET}, + {STR_LITERAL_INIT("SHIFTJIS"), SHIFTJIS_CHARSET}, + {STR_LITERAL_INIT("SYMBOL"), SYMBOL_CHARSET}, + {STR_LITERAL_INIT("ARABIC"), ARABIC_CHARSET}, + {STR_LITERAL_INIT("BALTIC"), BALTIC_CHARSET}, + {STR_LITERAL_INIT("EASTEUROPE"), EASTEUROPE_CHARSET}, + {STR_LITERAL_INIT("GB2312"), GB2312_CHARSET}, + {STR_LITERAL_INIT("GREEK"), GREEK_CHARSET}, + {STR_LITERAL_INIT("HEBREW"), HEBREW_CHARSET}, + {STR_LITERAL_INIT("JOHAB"), JOHAB_CHARSET}, + {STR_LITERAL_INIT("MAC"), MAC_CHARSET}, + {STR_LITERAL_INIT("RUSSIAN"), RUSSIAN_CHARSET}, + {STR_LITERAL_INIT("THAI"), THAI_CHARSET}, + {STR_LITERAL_INIT("TURKISH"), TURKISH_CHARSET} # ifdef VIETNAMESE_CHARSET , - {STRING_INIT("VIETNAMESE"), VIETNAMESE_CHARSET} + {STR_LITERAL_INIT("VIETNAMESE"), VIETNAMESE_CHARSET} # endif }; @@ -2696,23 +2694,22 @@ struct quality_pair static struct quality_pair quality_pairs[] = { # ifdef CLEARTYPE_QUALITY - {STRING_INIT("CLEARTYPE"), CLEARTYPE_QUALITY}, + {STR_LITERAL_INIT("CLEARTYPE"), CLEARTYPE_QUALITY}, # endif # ifdef ANTIALIASED_QUALITY - {STRING_INIT("ANTIALIASED"), ANTIALIASED_QUALITY}, + {STR_LITERAL_INIT("ANTIALIASED"), ANTIALIASED_QUALITY}, # endif # ifdef NONANTIALIASED_QUALITY - {STRING_INIT("NONANTIALIASED"), NONANTIALIASED_QUALITY}, + {STR_LITERAL_INIT("NONANTIALIASED"), NONANTIALIASED_QUALITY}, # endif # ifdef PROOF_QUALITY - {STRING_INIT("PROOF"), PROOF_QUALITY}, + {STR_LITERAL_INIT("PROOF"), PROOF_QUALITY}, # endif # ifdef DRAFT_QUALITY - {STRING_INIT("DRAFT"), DRAFT_QUALITY}, + {STR_LITERAL_INIT("DRAFT"), DRAFT_QUALITY}, # endif - {STRING_INIT("DEFAULT"), DEFAULT_QUALITY} + {STR_LITERAL_INIT("DEFAULT"), DEFAULT_QUALITY} }; -# undef STRING_INIT /* * Convert a charset ID to a name. diff --git a/src/os_unix.c b/src/os_unix.c index 1d382f7f33..12285b8e48 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -7260,13 +7260,10 @@ mch_expand_wildcards( int check_spaces; static int did_find_nul = FALSE; int ampersand = FALSE; -# define STRING_INIT(s) \ - {(char_u *)(s), STRLEN_LITERAL(s)} // vimglob() function to define for Posix shell - static string_T sh_vimglob_func = STRING_INIT("vimglob() { while [ $# -ge 1 ]; do echo \"$1\"; shift; done }; vimglob >"); + static string_T sh_vimglob_func = STR_LITERAL_INIT("vimglob() { while [ $# -ge 1 ]; do echo \"$1\"; shift; done }; vimglob >"); // vimglob() function with globstar setting enabled, only for bash >= 4.X - static string_T sh_globstar_opt = STRING_INIT("[[ ${BASH_VERSINFO[0]} -ge 4 ]] && shopt -s globstar; "); -# undef STRING_INIT + static string_T sh_globstar_opt = STR_LITERAL_INIT("[[ ${BASH_VERSINFO[0]} -ge 4 ]] && shopt -s globstar; "); *num_file = 0; // default: no files found diff --git a/src/popupwin.c b/src/popupwin.c index 35bcd4c80f..c1d614d03e 100644 --- a/src/popupwin.c +++ b/src/popupwin.c @@ -20,16 +20,13 @@ typedef struct { poppos_T pp_val; } poppos_entry_T; -#define STRING_INIT(s) \ - {(char_u *)(s), STRLEN_LITERAL(s)} static poppos_entry_T poppos_entries[] = { - {STRING_INIT("botleft"), POPPOS_BOTLEFT}, - {STRING_INIT("topleft"), POPPOS_TOPLEFT}, - {STRING_INIT("botright"), POPPOS_BOTRIGHT}, - {STRING_INIT("topright"), POPPOS_TOPRIGHT}, - {STRING_INIT("center"), POPPOS_CENTER} + {STR_LITERAL_INIT("botleft"), POPPOS_BOTLEFT}, + {STR_LITERAL_INIT("topleft"), POPPOS_TOPLEFT}, + {STR_LITERAL_INIT("botright"), POPPOS_BOTRIGHT}, + {STR_LITERAL_INIT("topright"), POPPOS_TOPRIGHT}, + {STR_LITERAL_INIT("center"), POPPOS_CENTER} }; -#undef STRING_INIT #ifdef HAS_MESSAGE_WINDOW // Window used for ":echowindow" diff --git a/src/version.c b/src/version.c index 9c634f7daa..681858f70d 100644 --- a/src/version.c +++ b/src/version.c @@ -734,6 +734,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 369, /**/ 368, /**/