diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-09-29 06:52:02 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-29 06:52:02 +0800 |
commit | 7ec20a4082f2e62e0ae90d464e0d62aa4ffdacf4 (patch) | |
tree | 48dacc0d7567c94211d775425565484ee20bfe51 /runtime/lua/vim/_meta/vimfn.lua | |
parent | 1117d29b2008bfe3a7bfdfac6b7856040b377161 (diff) | |
download | rneovim-7ec20a4082f2e62e0ae90d464e0d62aa4ffdacf4.tar.gz rneovim-7ec20a4082f2e62e0ae90d464e0d62aa4ffdacf4.tar.bz2 rneovim-7ec20a4082f2e62e0ae90d464e0d62aa4ffdacf4.zip |
vim-patch:9.0.1950: Vim9: error codes spread out (#25405)
Problem: Vim9: error codes spread out
Solution: group them together and reserve 100
more for future use
Reserve 100 error codes for future enhancements to the Vim9 class
support
closes: vim/vim#13207
https://github.com/vim/vim/commit/413f83990f15d5d59d27ab741670f527a7a3feb8
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Diffstat (limited to 'runtime/lua/vim/_meta/vimfn.lua')
-rw-r--r-- | runtime/lua/vim/_meta/vimfn.lua | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/runtime/lua/vim/_meta/vimfn.lua b/runtime/lua/vim/_meta/vimfn.lua index 6686661a27..86e8781160 100644 --- a/runtime/lua/vim/_meta/vimfn.lua +++ b/runtime/lua/vim/_meta/vimfn.lua @@ -6238,55 +6238,55 @@ function vim.fn.prevnonblank(lnum) end --- echo printf("%1$*2$.*3$f", 1.4142135, 6, 2) --- < 1.41 --- ---- *E1400* +--- *E1500* --- You cannot mix positional and non-positional arguments: >vim --- echo printf("%s%1$s", "One", "Two") ---- < E1400: Cannot mix positional and non-positional +--- < E1500: Cannot mix positional and non-positional --- arguments: %s%1$s --- ---- *E1401* +--- *E1501* --- You cannot skip a positional argument in a format string: >vim --- echo printf("%3$s%1$s", "One", "Two", "Three") ---- < E1401: format argument 2 unused in $-style +--- < E1501: format argument 2 unused in $-style --- format: %3$s%1$s --- ---- *E1402* +--- *E1502* --- You can re-use a [field-width] (or [precision]) argument: >vim --- echo printf("%1$d at width %2$d is: %01$*2$d", 1, 2) --- < 1 at width 2 is: 01 --- --- However, you can't use it as a different type: >vim --- echo printf("%1$d at width %2$ld is: %01$*2$d", 1, 2) ---- < E1402: Positional argument 2 used as field +--- < E1502: Positional argument 2 used as field --- width reused as different type: long int/int --- ---- *E1403* +--- *E1503* --- When a positional argument is used, but not the correct number --- or arguments is given, an error is raised: >vim --- echo printf("%1$d at width %2$d is: %01$*2$.*3$d", 1, 2) ---- < E1403: Positional argument 3 out of bounds: +--- < E1503: Positional argument 3 out of bounds: --- %1$d at width %2$d is: %01$*2$.*3$d --- --- Only the first error is reported: >vim --- echo printf("%01$*2$.*3$d %4$d", 1, 2) ---- < E1403: Positional argument 3 out of bounds: +--- < E1503: Positional argument 3 out of bounds: --- %01$*2$.*3$d %4$d --- ---- *E1404* +--- *E1504* --- A positional argument can be used more than once: >vim --- echo printf("%1$s %2$s %1$s", "One", "Two") --- < One Two One --- --- However, you can't use a different type the second time: >vim --- echo printf("%1$s %2$s %1$d", "One", "Two") ---- < E1404: Positional argument 1 type used +--- < E1504: Positional argument 1 type used --- inconsistently: int/string --- ---- *E1405* +--- *E1505* --- Various other errors that lead to a format string being --- wrongly formatted lead to: >vim --- echo printf("%1$d at width %2$d is: %01$*2$.3$d", 1, 2) ---- < E1405: Invalid format specifier: +--- < E1505: Invalid format specifier: --- %1$d at width %2$d is: %01$*2$.3$d --- --- @param fmt any |