neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit 8bb0878013a4507620201fa5aceb4c18e413bebe
parent 4e4ad4312e6b3755a2114ab81c62033e6bc616fe
Author: zeertzjq <zeertzjq@outlook.com>
Date:   Fri,  6 Oct 2023 07:21:40 +0800

vim-patch:9.0.1990: strange error number

Problem:  strange error number
Solution: change error number,
          add doc tag for E1507

closes: vim/vim#13270

https://github.com/vim/vim/commit/ea746f9e862092aef3d4e95c64d116759b9fabe0

Co-authored-by: Christ van Willegen <cvwillegen@gmail.com>

Diffstat:
Mruntime/doc/builtin.txt | 7+++++++
Mruntime/lua/vim/_meta/vimfn.lua | 7+++++++
Msrc/nvim/eval.lua | 8++++++++
Msrc/nvim/strings.c | 2+-
4 files changed, 23 insertions(+), 1 deletion(-)

diff --git a/runtime/doc/builtin.txt b/runtime/doc/builtin.txt @@ -5307,6 +5307,13 @@ printf({fmt}, {expr1} ...) *printf()* < E1505: Invalid format specifier: %1$d at width %2$d is: %01$*2$.3$d + *E1507* + This internal error indicates that the logic to + parse a positional format error ran into a problem + that couldn't be otherwise reported. Please file a + bug against vim if you run into this, copying the + exact format string and parameters that were used. + prompt_getprompt({buf}) *prompt_getprompt()* Returns the effective prompt text for buffer {buf}. {buf} can be a buffer name or number. See |prompt-buffer|. diff --git a/runtime/lua/vim/_meta/vimfn.lua b/runtime/lua/vim/_meta/vimfn.lua @@ -6290,6 +6290,13 @@ function vim.fn.prevnonblank(lnum) end --- < E1505: Invalid format specifier: --- %1$d at width %2$d is: %01$*2$.3$d --- +--- *E1507* +--- This internal error indicates that the logic to +--- parse a positional format error ran into a problem +--- that couldn't be otherwise reported. Please file a +--- bug against vim if you run into this, copying the +--- exact format string and parameters that were used. +--- --- @param fmt any --- @param expr1? any --- @return any diff --git a/src/nvim/eval.lua b/src/nvim/eval.lua @@ -7572,6 +7572,14 @@ M.funcs = { echo printf("%1$d at width %2$d is: %01$*2$.3$d", 1, 2) < E1505: Invalid format specifier: %1$d at width %2$d is: %01$*2$.3$d + + *E1507* + This internal error indicates that the logic to + parse a positional format error ran into a problem + that couldn't be otherwise reported. Please file a + bug against vim if you run into this, copying the + exact format string and parameters that were used. + ]=], name = 'printf', params = { { 'fmt', 'any' }, { 'expr1', 'any' } }, diff --git a/src/nvim/strings.c b/src/nvim/strings.c @@ -46,7 +46,7 @@ static const char e_positional_arg_num_type_inconsistent_str_str[] static const char e_invalid_format_specifier_str[] = N_("E1505: Invalid format specifier: %s"); static const char e_aptypes_is_null_nr_str[] - = "E1520: Internal error: ap_types or ap_types[idx] is NULL: %d: %s"; + = "E1507: Internal error: ap_types or ap_types[idx] is NULL: %d: %s"; static const char typename_unknown[] = N_("unknown"); static const char typename_int[] = N_("int");