From f211af3ab747ef06969d936baafd3f348f818259 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Sun, 12 Oct 2025 22:56:52 -0400 Subject: [PATCH 1/4] vim-patch:8.2.3962: build fails for missing error message Problem: Build fails for missing error message. Solution: Add changes in missed file. https://github.com/vim/vim/commit/d0819d11ecdf3bca4b0800ef905091b5e175b6f4 Co-authored-by: Bram Moolenaar --- scripts/vim-patch.sh | 4 ++++ src/nvim/errors.h | 2 +- src/nvim/regexp.c | 3 ++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/scripts/vim-patch.sh b/scripts/vim-patch.sh index 2993e59b63..3f9aa538c7 100755 --- a/scripts/vim-patch.sh +++ b/scripts/vim-patch.sh @@ -282,6 +282,10 @@ preprocess_patch() { LC_ALL=C sed -Ee 's/( [ab]\/src\/nvim)\/profiler\.c/\1\/profile.c/g' \ "$file" > "$file".tmp && mv "$file".tmp "$file" + # Rename regexp_(bt|nfa).c to regexp.c + LC_ALL=C sed -Ee 's/( [ab]\/src\/nvim)\/regexp_(bt|nfa)\.c/\1\/regexp.c/g' \ + "$file" > "$file".tmp && mv "$file".tmp "$file" + # Rename scriptfile.c to runtime.c LC_ALL=C sed -Ee 's/( [ab]\/src\/nvim)\/scriptfile\.c/\1\/runtime.c/g' \ "$file" > "$file".tmp && mv "$file".tmp "$file" diff --git a/src/nvim/errors.h b/src/nvim/errors.h index e0fc9ec0ca..83f8ec6e4f 100644 --- a/src/nvim/errors.h +++ b/src/nvim/errors.h @@ -27,7 +27,6 @@ EXTERN const char e_while[] INIT(= N_("E588: :endwhile without :while")); EXTERN const char e_for[] INIT(= N_("E588: :endfor without :for")); EXTERN const char e_exists[] INIT(= N_("E13: File exists (add ! to override)")); EXTERN const char e_failed[] INIT(= N_("E472: Command failed")); -EXTERN const char e_internal[] INIT(= N_("E473: Internal error")); EXTERN const char e_intern2[] INIT(= N_("E685: Internal error: %s")); EXTERN const char e_interr[] INIT(= N_("Interrupted")); EXTERN const char e_invarg[] INIT(= N_("E474: Invalid argument")); @@ -37,6 +36,7 @@ EXTERN const char e_invargNval[] INIT(= N_("E475: Invalid value for argument %s: EXTERN const char e_duparg2[] INIT(= N_("E983: Duplicate argument: %s")); EXTERN const char e_invexpr2[] INIT(= N_("E15: Invalid expression: \"%s\"")); EXTERN const char e_invrange[] INIT(= N_("E16: Invalid range")); +EXTERN const char e_internal_error_in_regexp[] INIT(= N_("E473: Internal error in regexp")); EXTERN const char e_invcmd[] INIT(= N_("E476: Invalid command")); EXTERN const char e_isadir2[] INIT(= N_("E17: \"%s\" is a directory")); EXTERN const char e_no_spell[] INIT(= N_("E756: Spell checking is not possible")); diff --git a/src/nvim/regexp.c b/src/nvim/regexp.c index 0968cbdd4f..e8afffbe63 100644 --- a/src/nvim/regexp.c +++ b/src/nvim/regexp.c @@ -4370,7 +4370,8 @@ static uint8_t *regatom(int *flagp) if (one_exactly) { EMSG_ONE_RET_NULL; } - IEMSG_RET_NULL(_(e_internal)); // Supposed to be caught earlier. + // Supposed to be caught earlier. + IEMSG_RET_NULL(_(e_internal_error_in_regexp)); // NOTREACHED case Magic('='): From 24675ffa97d464783647beab1c9eb59d475fde3a Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Sun, 12 Oct 2025 23:12:57 -0400 Subject: [PATCH 2/4] vim-patch:8.2.3968: build failure Problem: Build failure. Solution: Add missing changes. https://github.com/vim/vim/commit/e70cec976026ce72d09b6589ebba4677581063ac Co-authored-by: Bram Moolenaar --- src/nvim/errors.h | 5 ++++- src/nvim/eval/funcs.c | 7 +++---- src/nvim/eval/list.c | 2 +- src/nvim/eval/vars.c | 2 +- src/nvim/quickfix.c | 2 +- 5 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/nvim/errors.h b/src/nvim/errors.h index 83f8ec6e4f..e7e1395184 100644 --- a/src/nvim/errors.h +++ b/src/nvim/errors.h @@ -93,7 +93,6 @@ EXTERN const char e_letwrong[] INIT(= N_("E734: Wrong variable type for %s=")); EXTERN const char e_illvar[] INIT(= N_("E461: Illegal variable name: %s")); EXTERN const char e_cannot_mod[] INIT(= N_("E995: Cannot modify existing variable")); EXTERN const char e_readonlyvar[] INIT(= N_("E46: Cannot change read-only variable \"%.*s\"")); -EXTERN const char e_stringreq[] INIT(= N_("E928: String required")); EXTERN const char e_dictreq[] INIT(= N_("E715: Dictionary required")); EXTERN const char e_blobidx[] INIT(= N_("E979: Blob index out of range: %" PRId64)); EXTERN const char e_invalblob[] INIT(= N_("E978: Invalid operation for Blob")); @@ -176,9 +175,13 @@ EXTERN const char e_highlight_group_name_invalid_char[] INIT(= N_("E5248: Invali EXTERN const char e_highlight_group_name_too_long[] INIT(= N_("E1249: Highlight group name too long")); +EXTERN const char e_string_required[] INIT(= N_("E928: String required")); + EXTERN const char e_invalid_column_number_nr[] INIT( = N_("E964: Invalid column number: %ld")); EXTERN const char e_invalid_line_number_nr[] INIT(= N_("E966: Invalid line number: %ld")); +EXTERN const char e_reduce_of_an_empty_str_with_no_initial_value[] INIT(= N_("E998: Reduce of an empty %s with no initial value")); + EXTERN const char e_stray_closing_curly_str[] INIT(= N_("E1278: Stray '}' without a matching '{': %s")); EXTERN const char e_missing_close_curly_str[] diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c index 84d09982e6..3fc744d94b 100644 --- a/src/nvim/eval/funcs.c +++ b/src/nvim/eval/funcs.c @@ -160,7 +160,6 @@ PRAGMA_DIAG_POP static const char *e_invalwindow = N_("E957: Invalid window number"); static const char e_invalid_submatch_number_nr[] = N_("E935: Invalid submatch number: %d"); -static const char *e_reduceempty = N_("E998: Reduce of an empty %s with no initial value"); static const char e_string_list_or_blob_required[] = N_("E1098: String, List or Blob required"); static const char e_missing_function_argument[] @@ -5356,7 +5355,7 @@ static void reduce_list(typval_T *argvars, typval_T *expr, typval_T *rettv) const listitem_T *li = NULL; if (argvars[2].v_type == VAR_UNKNOWN) { if (tv_list_len(l) == 0) { - semsg(_(e_reduceempty), "List"); + semsg(_(e_reduce_of_an_empty_str_with_no_initial_value), "List"); return; } const listitem_T *const first = tv_list_first(l); @@ -5403,7 +5402,7 @@ static void reduce_string(typval_T *argvars, typval_T *expr, typval_T *rettv) if (argvars[2].v_type == VAR_UNKNOWN) { if (*p == NUL) { - semsg(_(e_reduceempty), "String"); + semsg(_(e_reduce_of_an_empty_str_with_no_initial_value), "String"); return; } len = utfc_ptr2len(p); @@ -5451,7 +5450,7 @@ static void reduce_blob(typval_T *argvars, typval_T *expr, typval_T *rettv) int i; if (argvars[2].v_type == VAR_UNKNOWN) { if (tv_blob_len(b) == 0) { - semsg(_(e_reduceempty), "Blob"); + semsg(_(e_reduce_of_an_empty_str_with_no_initial_value), "Blob"); return; } initial = (typval_T){ diff --git a/src/nvim/eval/list.c b/src/nvim/eval/list.c index 76ddd77cbe..6f4f637f7e 100644 --- a/src/nvim/eval/list.c +++ b/src/nvim/eval/list.c @@ -249,7 +249,7 @@ static void filter_map_string(const char *str, filtermap_T filtermap, typval_T * if (newtv.v_type != VAR_STRING) { tv_clear(&newtv); tv_clear(&tv); - emsg(_(e_stringreq)); + emsg(_(e_string_required)); break; } else { ga_concat(&ga, newtv.vval.v_string); diff --git a/src/nvim/eval/vars.c b/src/nvim/eval/vars.c index 8290926f4b..3ccb2fb437 100644 --- a/src/nvim/eval/vars.c +++ b/src/nvim/eval/vars.c @@ -2606,7 +2606,7 @@ static OptVal tv_to_optval(typval_T *tv, OptIndex opt_idx, const char *option, b value = CSTR_TO_OPTVAL(strval); } else if (!is_tty_opt) { err = true; - emsg(_(e_stringreq)); + emsg(_(e_string_required)); } } else { abort(); // This should never happen. diff --git a/src/nvim/quickfix.c b/src/nvim/quickfix.c index 14cbd3ccc8..7ce4709d26 100644 --- a/src/nvim/quickfix.c +++ b/src/nvim/quickfix.c @@ -7716,7 +7716,7 @@ static void set_qf_ll_list(win_T *wp, typval_T *args, typval_T *rettv) // Option argument was not given. goto skip_args; } else if (action_arg->v_type != VAR_STRING) { - emsg(_(e_stringreq)); + emsg(_(e_string_required)); return; } const char *const act = tv_get_string_chk(action_arg); From e96c61d92d4f815389b3fd5ff7646fbab30195e9 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Sun, 12 Oct 2025 23:52:35 -0400 Subject: [PATCH 3/4] vim-patch:8.2.4773: build failure without the +eval feature Problem: Build failure without the +eval feature. Solution: Use other error message. Avoid warnings. https://github.com/vim/vim/commit/a9549c9e8f368a7fa1dcbe14ec23e82c6a0b8715 Co-authored-by: Bram Moolenaar --- src/nvim/indent_c.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nvim/indent_c.c b/src/nvim/indent_c.c index 0c1220c1d9..d197e78187 100644 --- a/src/nvim/indent_c.c +++ b/src/nvim/indent_c.c @@ -559,7 +559,7 @@ static int cin_isdefault(const char *s) && s[1] != ':'; } -/// Recognize a scope declaration label set in 'cinscopedecls'. +/// Recognize a scope declaration label from the 'cinscopedecls' option. static bool cin_isscopedecl(const char *p) { const char *s = cin_skipcomment(p); From b764a1ba932ab07edb169b63a102b20cb7769f90 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Mon, 13 Oct 2025 00:15:21 -0400 Subject: [PATCH 4/4] vim-patch:8.2.2423: missing error message Problem: Missing error message. Solution: Add the error message. https://github.com/vim/vim/commit/61015162ba834541c42da5db6f3fa0ebe1d40e87 Co-authored-by: Bram Moolenaar --- src/nvim/arglist.c | 2 -- src/nvim/errors.h | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/nvim/arglist.c b/src/nvim/arglist.c index 30000451f8..1d5903aefc 100644 --- a/src/nvim/arglist.c +++ b/src/nvim/arglist.c @@ -68,8 +68,6 @@ typedef struct { static const char e_window_layout_changed_unexpectedly[] = N_("E249: Window layout changed unexpectedly"); -static const char e_cannot_change_arglist_recursively[] - = N_("E1156: Cannot change the argument list recursively"); enum { AL_SET = 1, diff --git a/src/nvim/errors.h b/src/nvim/errors.h index e7e1395184..b63929a657 100644 --- a/src/nvim/errors.h +++ b/src/nvim/errors.h @@ -166,6 +166,7 @@ EXTERN const char e_no_more_directory_str_found_in_cdpath[] INIT(= N_("E346: No EXTERN const char e_no_more_file_str_found_in_path[] INIT(= N_("E347: No more file \"%s\" found in path")); EXTERN const char e_cannot_define_autocommands_for_all_events[] INIT(= N_("E1155: Cannot define autocommands for ALL events")); +EXTERN const char e_cannot_change_arglist_recursively[] INIT(= N_("E1156: Cannot change the argument list recursively")); EXTERN const char e_resulting_text_too_long[] INIT(= N_("E1240: Resulting text too long"));