summaryrefslogtreecommitdiffstats
path: root/runtime/doc/version9.txt
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:09:20 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:09:20 +0000
commit029f72b1a93430b24b88eb3a72c6114d9f149737 (patch)
tree765d5c2041967f9c6fef195fe343d9234a030e90 /runtime/doc/version9.txt
parentInitial commit. (diff)
downloadvim-029f72b1a93430b24b88eb3a72c6114d9f149737.tar.xz
vim-029f72b1a93430b24b88eb3a72c6114d9f149737.zip
Adding upstream version 2:9.1.0016.upstream/2%9.1.0016
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'runtime/doc/version9.txt')
-rw-r--r--runtime/doc/version9.txt41538
1 files changed, 41538 insertions, 0 deletions
diff --git a/runtime/doc/version9.txt b/runtime/doc/version9.txt
new file mode 100644
index 0000000..697fd79
--- /dev/null
+++ b/runtime/doc/version9.txt
@@ -0,0 +1,41538 @@
+*version9.txt* For Vim version 9.1. Last change: 2024 Jan 05
+
+
+ VIM REFERENCE MANUAL by Bram Moolenaar
+
+
+ *vim-9.0* *vim-9* *version-9.0* *version9.0*
+Welcome to Vim 9! Several years have passed since the previous release.
+A large number of bugs have been fixed, many nice features have been added
+and the Vim9 script syntax is here! This file mentions all the new things and
+changes to existing features since Vim 8.2.0. The patches up to Vim 8.2 can be
+found here: |vim-8.2|.
+
+Use this command to see the full version and features information of the Vim
+program you are using: >
+ :version
+
+NEW FEATURES |new-9|
+ Vim script enhancements |new-vim-script-9|
+ Command line completion in a popup menu |new-popup-compl|
+ Updated colorschemes |new-colorschemes-9|
+ Various new items |new-items-9|
+
+INCOMPATIBLE CHANGES |incompatible-9|
+
+IMPROVEMENTS |improvements-9|
+
+COMPILE TIME CHANGES |compile-changes-9|
+
+PATCHES |patches-9|
+
+VERSION 9.1 |version-9.1|
+Changed |changed-9.1|
+Added |added-9.1|
+Patches |patches-9.1|
+
+
+See |vi_diff.txt| for an overview of differences between Vi and Vim 9.0.
+See |version4.txt|, |version5.txt|, |version6.txt|, |version7.txt| and
+|version8.txt| for differences between Vim versions.
+
+You can find an overview of the most important changes (according to Martin
+Tournoij) on this site: https://www.arp242.net/vimlog/
+
+ *Sven-Guckes*
+Vim version 9.0 is dedicated to Sven Guckes, who passed away in February 2022
+when the release was being prepared. Sven was a long time supporter of Vim.
+He registered the vim.org domain and created the first Vim website. We will
+remember him!
+
+ *Bram* *Moolenaar* *Bram-Moolenaar*
+Vim version 9.1 is dedicated to Bram Moolenaar, who passed away on August 3rd
+2023 while still working full-time on Vim. The Vim project would not exist
+without his ongoing passion to lead and develop Vim and the community for more
+than 30 years. Bram was also passionate about his |ICCF| foundation to help
+children in Uganda. If you enjoy using Vim, please consider donating! We will
+miss his guidance, passion and leadership.
+
+Obituary Articles: https://github.com/vim/vim/discussions/12742
+Say Farewell: https://github.com/vim/vim/discussions/12737
+
+==============================================================================
+NEW FEATURES *new-9*
+
+First an overview of the more interesting new features. A comprehensive list
+is below.
+
+
+Vim9 script ~
+ *new-vim-script-9*
+The Vim script language has been changed step by step over many years,
+preserving backwards compatibility. Several choices made in the early days
+got in the way of making it work better. At the same time, Vim script is
+being used much more often, since there are so many plugins being used.
+
+Vim9 script provides a syntax that is much more similar to other languages.
+In other words: "less weird". Compiled functions are introduced which allow
+for a large speed improvement. You can expect around ten times faster
+execution, or even more. The price to pay is that Vim9 script is not
+backwards compatible. But don't worry, you can still use your old scripts,
+the new script language is added, it does not replace the legacy script.
+
+Information about Vim9 script can be found in the |Vim9| help file.
+
+
+Command line completion in a popup menu ~
+ *new-popup-compl*
+Before there was the 'wildmenu' option, which uses the space of one line above
+the statusline to show matches. Only a few matches fit there.
+
+Now a popup menu can be used by setting 'wildoptions' to "pum". This allows
+for showing many more matches. This requires redrawing more of the display,
+but since computers are fast enough that is not a problem.
+
+
+Updated colorschemes ~
+ *new-colorschemes-9*
+Colorschemes from https://github.com/vim/colorschemes have been included.
+They were made to work consistently across many types of terminals. Although
+generally an improvement, a lot of personal preference is involved. You can
+always get the old version if you prefer it, look here:
+https://github.com/vim/colorschemes/blob/master/legacy_colors/
+
+
+Various new items ~
+ *new-items-9*
+Options: ~
+
+'autoshelldir' change directory to the shell's current directory
+'cdhome' change directory to the home directory by ":cd"
+'cinscopedecls' words that are recognized by 'cino-g'
+'guiligatures' GTK GUI: ASCII characters that can form shapes
+'mousemoveevent' report mouse moves with <MouseMove>
+'quickfixtextfunc' function for the text in the quickfix window
+'spelloptions' options for spell checking
+'thesaurusfunc' function to be used for thesaurus completion
+'xtermcodes' request terminal codes from an xterm
+
+
+Ex commands: ~
+
+|:abstract| (reserved for future use)
+|:argdedupe| remove duplicates from the argument list
+|:balt| like ":badd" but also set the alternate file
+|:class| (reserved for future use)
+|:def| define a Vim9 user function
+|:defcompile| compile Vim9 user functions in current script
+|:disassemble| disassemble Vim9 user function
+|:echoconsole| like :echomsg but write to stdout
+|:endinterface| (reserved for future use)
+|:endclass| (reserved for future use)
+|:enddef| end of a user function started with :def
+|:endenum| (reserved for future use)
+|:enum| (reserved for future use)
+|:eval| evaluate an expression and discard the result
+|:export| Vim9: export an item from a script
+|:final| declare an immutable variable in Vim9
+|:import| Vim9: import an item from another script
+|:interface| (reserved for future use)
+|:static| (reserved for future use)
+|:type| (reserved for future use)
+|:var| variable declaration in Vim9
+|:vim9script| indicates Vim9 script file
+
+
+Ex command modifiers: ~
+
+|:legacy| make following command use legacy script syntax
+|:vim9cmd| make following command use Vim9 script syntax
+
+
+New and extended functions: ~
+
+|assert_nobeep()| assert that a command does not cause a beep
+|autocmd_add()| add a list of autocmds and groups
+|autocmd_delete()| delete a list of autocmds and groups
+|autocmd_get()| return a list of autocmds
+|blob2list()| get a list of numbers from a blob
+|charclass()| class of a character
+|charcol()| character number of the cursor or a mark
+|charidx()| character index of a byte in a string
+|digraph_get()| get digraph
+|digraph_getlist()| get all digraphs
+|digraph_set()| register digraph
+|digraph_setlist()| register multiple digraphs
+|echoraw()| output characters as-is
+|exists_compiled()| like exists() but check at compile time
+|extendnew()| make a new Dictionary and append items
+|flatten()| flatten a List
+|flattennew()| flatten a copy of a List
+|fullcommand()| get full command name
+|getcharpos()| get character position of cursor, mark, etc.
+|getcharstr()| get a character from the user as a string
+|getcmdcompltype()| return current cmdline completion type
+|getcmdscreenpos()| return the current cursor position in the cmdline
+|getcursorcharpos()| get character position of the cursor
+|getmarklist()| list of global/local marks
+|getreginfo()| get information about a register
+|gettext()| lookup message translation
+|hlget()| get highlight group attributes
+|hlset()| set highlight group attributes
+|isabsolutepath()| check if a path is absolute
+|list2blob()| get a blob from a list of numbers
+|maplist()| list of all mappings, a dict for each
+|mapnew()| make a new List with changed items
+|mapset()| restore a mapping
+|matchfuzzy()| fuzzy matches a string in a list of strings
+|matchfuzzypos()| fuzzy matches a string in a list of strings
+|menu_info()| get information about a menu item
+|popup_list()| get list of all popup window IDs
+|prompt_getprompt()| get the effective prompt text for a buffer
+|prop_add_list()| attach a property at multiple positions
+|prop_find()| search for a property
+|readblob()| read a file into a Blob
+|readdirex()| get a List of file information in a directory
+|reduce()| reduce a List to a value
+|searchcount()| get number of matches before/after the cursor
+|setcellwidths()| set character cell width overrides
+|setcharpos()| set character position of cursor, mark, etc.
+|setcursorcharpos()| set character position of the cursor
+|slice()| take a slice of a List
+|strcharlen()| length of a string in characters
+|terminalprops()| properties of the terminal
+|test_gui_event()| generate a GUI event for testing
+|test_null_function()| return a null Funcref
+|test_srand_seed()| set the seed value for srand()
+|test_unknown()| return a value with unknown type
+|test_void()| return a value with void type
+|typename()| type of a variable as text
+|virtcol2col()| byte index of a character on screen
+|win_gettype()| get type of window
+|win_move_separator()| move window vertical separator
+|win_move_statusline()| move window status line
+|windowsversion()| get MS-Windows version
+
+
+New Vim variables: ~
+
+|v:numbermax| maximum value of a number
+|v:numbermin| minimum value of a number (negative)
+|v:numbersize| number of bits in a Number
+|v:collate| current locale setting for collation order
+|v:exiting| vim exit code
+|v:colornames| dictionary that maps color names to hex color strings
+|v:sizeofint| number of bytes in an int
+|v:sizeoflong| number of bytes in a long
+|v:sizeofpointer| number of bytes in a pointer
+|v:maxcol| maximum line length
+
+
+New autocommand events: ~
+
+|CompleteDonePre| after Insert mode completion done, before clearing info
+|DirChangedPre| before the working directory will change
+|InsertLeavePre| just before leaving Insert mode
+|ModeChanged| after changing the mode
+|SigUSR1| after the SIGUSR1 signal has been detected
+|WinClosed| after closing a window
+|WinScrolled| after scrolling or resizing a window
+|VimSuspend| when suspending Vim
+|VimResume| when Vim is resumed after being suspended
+
+
+New operators: ~
+
+|>>| bitwise right shift
+|<<| bitwise left shift
+|??| falsy operator
+
+New runtime files: ~
+
+Too many to list here.
+
+==============================================================================
+INCOMPATIBLE CHANGES *incompatible-9*
+
+There is only one change that is incompatible with previous releases:
+
+- Lua arrays are now one-based, they used to be zero-based.
+
+Note that when using |Vim9| script several things work differently, see
+|vim9-differences|.
+
+==============================================================================
+IMPROVEMENTS *improvements-9*
+
+Various small and useful improvements have been made since Vim 8.2, here is a
+summary.
+
+Many memory leaks, invalid memory accesses and crashes have been fixed.
+See the list of patches below: |bug-fixes-9|.
+
+Support for Vim expression evaluation in a string. |interpolated-string|
+Support for evaluating Vim expressions in a heredoc. |:let-heredoc|
+
+Support for fuzzy matching:
+- a string in a List of strings. |fuzzy-matching|
+- completion support for command line completion using 'wildoptions'.
+- for |:vimgrep|.
+
+Added support for the |Haiku| OS.
+
+Support for "lsp" channel mode to simplify LSP server RPC communication
+|language-server-protocol|. Support for using a Unix domain socket with a
+|channel|. IPv6 support in channels |channel-address|.
+
+Support for sourcing lines from the current buffer. |:source-range|
+
+Terminal window improvements:
+- Support for opening a terminal in a popup window. |popup-terminal|
+- Allow setting underline color in terminal.
+- Detect focus events in terminal (|FocusGained| and |FocusLost|).
+- Add bell support for the terminal window. ('belloff')
+- Support mouse left-right scrolling in a terminal window.
+
+Support for stopping profiling a Vim script: `:profile stop` and dumping the
+report to a file: `:profile dump` . |:profile|
+
+Completion improvements:
+- Argument completion support for the |:breakadd|, |:breakdel|, |:diffget|,
+ |:diffput|, |:profile|, |:profdel| and |:scriptnames| commands.
+- Support using any Vim type for user_data with the completion functions
+ (|complete-items|).
+- Stop insert mode completion without changing text (|i_CTRL-X_CTRL-Z|).
+- Add the "cmdline" option to |getcompletion()| to return the command line
+ arguments.
+
+Support for setting the 'foldtext', 'completefunc', 'omnifunc',
+'operatorfunc', 'thesaurusfunc', 'quickfixtextfunc', 'tagfunc',
+'imactivatefunc' and 'imstatusfunc' options to a function reference or a
+lambda function or a script-local function.
+
+Support directly setting the 'balloonexpr', 'charconvert' 'foldexpr',
+'formatexpr', 'includeexpr', 'printexpr', 'patchexpr', 'indentexpr',
+'modelineexpr', 'diffexpr' and 'printexpr' options to a script-local function.
+
+Improvements in 'fillchars':
+- Support for configuring the character used to mark the beginning of a fold,
+ show a closed fold and show a fold separator using "foldopen", "foldclose"
+ and "foldsep" respectively in 'fillchars'.
+- Support for configuring the character displayed in non existing lines using
+ "eob" in 'fillchars'.
+- Support for using multibyte items with the "stl", "stlnc", "foldopen",
+ "foldclose" and "foldsep" items in the 'fillchars' option.
+
+Support for the XChaCha20 encryption method. 'cryptmethod'
+
+Spell checking:
+- Spell check current word with |z=| even when 'spell' is off.
+- Add "timeout" to 'spellsuggest' to limit the searching time for spell
+ suggestions.
+- Add support for spell checking CamelCased words by adding "camel" to
+ 'spelloptions'.
+
+Support for executing Ex commands in a map without changing the current mode
+|<Cmd>| and |<ScriptCmd>|.
+
+Add optional error code to |:cquit|.
+
+Recognize numbers as unsigned when "unsigned" is set in 'nrformats'.
+
+Expand script ID using expand('<SID>') and script name using
+expand('<script>'). |expand()|
+
+Jump to the last accessed tab page using |g<Tab>| and support using the
+last accessed tab page in |:tabnext| et al.
+
+Locale aware sorting using |:sort| and |sort()|.
+
+Hide cursor when sleeping using |:sleep!|.
+
+Add "multispace" to 'listchars' to show two or more spaces no matter where
+they appear. Add "leadmultispace" to 'listchars' to show two or more leading
+spaces. Add "lead" to 'listchars' to set the character used to show leading
+spaces. Support specifying a character using the hexadecimal notation in
+'listchars' (\x, \u and \U).
+
+Make 'listchars', 'virtualedit' and 'thesaurusfunc' global-local options.
+
+Support for looping over a string using `:for`.
+
+Don't reset 'wrap' for diff windows when "followwrap" is set in 'diffopt'.
+
+Support for re-evaluating the 'statusline' expression as a statusline format
+string (%{% expr %})
+
+Add |zp| and |zP| to paste in block mode without adding trailing white space.
+Add |zy| to yank without trailing white space in block mode.
+
+Add the 'P' command in visual mode to paste text in Visual mode without
+yanking the deleted text to the unnamed register. |put-Visual-mode|
+
+Add \%.l, \%<.l and \%>.l atoms to match the line the cursor is currently on.
+See |/\%l| for more information.
+
+Add "list" to 'breakindentopt' to add additional indent for lines that match
+a numbered or bulleted list. Add "column" to 'breakindentopt' to indent
+soft-wrapped lines at a specific column.
+
+Add the |hl-CursorLineSign| and |hl-CursorLineFold| default highlight groups to
+adjust sign highlighting for 'cursorline'.
+
+Add the |hl-CurSearch| default highlight group for the current search match.
+
+Add support for logging on Vim startup (|--log|).
+
+Add support for customizing the quickfix buffer contents using
+'quickfixtextfunc'. Support for the "note" error type (%t) in |errorformat|.
+Add support for parsing the end line number (%e) and end column number (%k)
+using 'errorformat'.
+
+Support truncating the tag stack using |settagstack()|.
+
+Display every option in a separate line when "!" is used with |:set|.
+
+Add "nostop" to 'backspace' to allow backspacing over the start of insert for
+|CTRL-W| and |CTRL-U| also.
+
+Sync the undo file if 'fsync' is set.
+
+Support excluding the 'runtimepath' and 'packpath' options from a session file
+using "skiprtp" in 'sessionoptions'.
+
+Support for getting the number of lines (line count) in a buffer using
+|getbufinfo()|.
+
+Support |filter()| and |map()| for blob and string types.
+
+Support for using a multi-byte character for the tag kind. |tags-file-format|
+
+Add support for checking whether a function name is valid using |exists()|.
+
+Update xdiff to version 2.33. Update libvterm to revision 789.
+
+Support 'trim' for Python/Lua/Perl/Tcl/Ruby/MzScheme interface heredoc.
+
+Add the |t_AU| and |t_8u| termcap codes for underline and undercurl. Add the
+t_fd and t_fe termcap codes for detecting focus events.
+
+Support for indenting C pragmas like normal code. (|cino-P|)
+
+Add support for defining the syntax fold level. (|:syn-foldlevel|)
+
+Add support for using \<*xxx> in a string to prepend a modifier to a
+character. (|expr-quote|)
+
+Add support trimming characters at the beginning or end of a string using
+|trim()|.
+
+Make ":verbose pwd" show the scope of the directory. |:pwd-verbose|
+
+Add the "0o" notation for specifying octal numbers. |scriptversion-4|
+
+Support for changing to the previous tab-local and window-local directories
+using the "tcd -" and "lcd -" commands. (|:tcd-| and |:lcd-|)
+
+Add support for skipping an expression using |search()|.
+
+Add support for sorting the directory contents returned by the |readdir()|
+and |readdirex()| functions by case.
+
+Add support for executing (|:@|) a register containing line continuation.
+
+Lua support:
+- Call Vim functions from Lua (vim.call() and vim.fn()).
+- Convert a Lua function and a closure to a Vim funcref so that it can be
+ accessed in a Vim script (|lua-funcref|).
+- Not backwards compatible: Make Lua arrays one based.
+- Add support for using table.insert() and table.remove() functions with Vim
+ lists.
+- Support for running multiple Ex-mode commands using vim.command().
+- Add vim.lua_version to get the Lua version.
+- Add support for accessing Vim namespace dictionaries from Lua
+ (|lua-vim-variables|).
+
+Support for new UTF-8 characters from Unicode release 13.
+
+Support for using a command block (|:command-repl|) when defining a |:command|
+or an |:autocmd|.
+
+Support for using |:z!| to use the Vim display height instead of the current
+window height.
+
+Support for deleting a buffer-local command using ":delcommand -buffer {cmd}".
+
+When formatting a // comment after a statement, find the start of the line
+comment, insert the comment leader and indent the comment properly (|fo-/|).
+
+Add the "numhl" argument to `:sign define` to use a separate highlight group
+for the line number on a line where a sign is placed. |:sign-define|
+
+When $SHELL ends in "nologin" or "false", start Vim in restricted mode.
+
+TermDebug enhancements:
+- Support for showing the disassembled code in a separate window.
+- Support for the GDB until command.
+- Use a separate group for the signs.
+
+xxd: Support for showing offset as a decimal number (-d).
+
+The C omni-complete plugin (|ft-c-omni|), the file type detection script
+(ft.vim) and the syntax menu generation script (makemenu.vim) have been
+rewritten using the Vim9 script syntax.
+
+A large number of tests have been added to verify the Vim functionality. Most
+of the old style tests have been converted to new style tests using the new
+style assert_* functions.
+
+Many Coverity static analysis warnings have been fixed.
+
+==============================================================================
+COMPILE TIME CHANGES *compile-changes-9*
+
+The following features are now enabled in all the builds:
+ |+cindent|
+ |+jumplist|
+ |+lispindent|
+ |+num64|
+ |+smartindent|
+ |+tag_binary|
+ |+title|
+
+The following features have been removed. They are either obsolete or didn't
+work properly:
+ - Athena and neXTaw GUI support (use Motif instead)
+ - EBCDIC support
+ - Atari MiNT and BeOS
+ - Mac Carbon GUI (use MacVim instead)
+
+The rgb.txt file is no longer included, use colors/lists/default.vim instead.
+
+Several large source files were split, mainly to make it easier to inspect
+code coverage information. Source files have also been refactored for
+maintainability.
+
+Support for building Vim with Mingw64 clang compiler on MS-Windows.
+
+Support for building Vim with Python 3.10, Lua 5.4.4, Perl 5.34 and
+Ruby 3.1.0.
+
+==============================================================================
+PATCHES *patches-9* *bug-fixes-9*
+ *patches-after-8.2*
+
+The list of patches that got included since 8.2.0. This includes all the new
+features, but does not include runtime file changes (syntax, indent, help,
+etc.)
+
+Patch 8.2.0001
+Problem: #endif comments do not reflect corresponding #ifdef.
+Solution: Update the comments. (Rene Nyffenegger, closes #5351)
+Files: src/ui.c
+
+Patch 8.2.0002
+Problem: "dj" only deletes first line of closed fold.
+Solution: Adjust last line of operator for linewise motion. (closes #5354)
+Files: src/ops.c, src/testdir/test_fold.vim
+
+Patch 8.2.0003
+Problem: Build file dependencies are incomplete.
+Solution: Fix the dependencies. (Ken Takata, closes #5356)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
+ src/Makefile
+
+Patch 8.2.0004
+Problem: Get E685 and E931 if buffer reload is interrupted.
+Solution: Do not abort deleting a dummy buffer. (closes #5361)
+Files: src/buffer.c, src/proto/buffer.pro, src/testdir/test_trycatch.vim,
+ src/ex_cmds.c, src/ex_getln.c, src/misc2.c, src/quickfix.c,
+ src/window.c, src/vim.h
+
+Patch 8.2.0005
+Problem: Duplication in version info.
+Solution: Use preprocessor string concatenation. (Ken Takata, closes #5357)
+Files: src/version.h
+
+Patch 8.2.0006
+Problem: Test using long file name may fail. (Vladimir Lomov)
+Solution: Limit the name length. (Christian Brabandt, closes #5358)
+Files: src/testdir/test_display.vim
+
+Patch 8.2.0007
+Problem: Popup menu positioned wrong with folding in two tabs.
+Solution: Update the cursor line height. (closes #5353)
+Files: src/move.c, src/proto/move.pro, src/popupmenu.c,
+ src/testdir/test_ins_complete.vim,
+ src/testdir/dumps/Test_pum_with_folds_two_tabs.dump
+
+Patch 8.2.0008
+Problem: Test72 is old style.
+Solution: Convert to new style test. (Yegappan Lakshmanan, closes #5362)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test72.in, src/testdir/test72.ok,
+ src/testdir/test_undo.vim
+
+Patch 8.2.0009
+Problem: VMS: terminal version doesn't build.
+Solution: Move MIN definition. Adjust #ifdefs. (Zoltan Arpadffy)
+Files: src/bufwrite.c, src/fileio.c, src/ui.c, src/xxd/Make_vms.mms
+
+Patch 8.2.0010
+Problem: Test64 is old style.
+Solution: Convert to new style test. (Yegappan Lakshmanan, closes #5363)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test64.in, src/testdir/test64.ok,
+ src/testdir/test95.in, src/testdir/test_regexp_latin.vim
+
+Patch 8.2.0011
+Problem: Screen updating wrong when opening preview window.
+Solution: Redraw the window when the preview window opens.
+Files: src/popupmenu.c, src/testdir/test_ins_complete.vim,
+ src/testdir/dumps/Test_pum_with_preview_win.dump
+
+Patch 8.2.0012
+Problem: Some undo functionality is not tested.
+Solution: Add a few more test cases. (Dominique Pellé, closes #5364)
+Files: src/testdir/test_undo.vim
+
+Patch 8.2.0013
+Problem: Not using a typedef for condstack.
+Solution: Add a typedef.
+Files: src/structs.h, src/ex_docmd.c, src/ex_eval.c, src/userfunc.c,
+ src/ex_cmds.h, src/proto/ex_eval.pro
+
+Patch 8.2.0014
+Problem: Test69 and test95 are old style.
+Solution: Convert to new style tests. (Yegappan Lakshmanan, closes #5365)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test69.in, src/testdir/test69.ok,
+ src/testdir/test95.in, src/testdir/test95.ok,
+ src/testdir/test_regexp_utf8.vim, src/testdir/test_textformat.vim
+
+Patch 8.2.0015
+Problem: Not all modeline variants are tested.
+Solution: Add modeline tests. (Dominique Pellé, closes #5369)
+Files: src/testdir/test_modeline.vim
+
+Patch 8.2.0016
+Problem: Test name used twice, option not restored properly.
+Solution: Rename function, restore option with "&".
+Files: src/testdir/test_textformat.vim
+
+Patch 8.2.0017
+Problem: OS/2 and MS-DOS are still mentioned, even though support was
+ removed long ago.
+Solution: Update documentation. (Yegappan Lakshmanan, closes #5368)
+Files: runtime/doc/autocmd.txt, runtime/doc/change.txt,
+ runtime/doc/cmdline.txt, runtime/doc/editing.txt,
+ runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/insert.txt,
+ runtime/doc/options.txt, runtime/doc/print.txt,
+ runtime/doc/quickfix.txt, runtime/doc/repeat.txt,
+ runtime/doc/starting.txt, runtime/doc/usr_01.txt,
+ runtime/doc/usr_05.txt, runtime/doc/usr_41.txt,
+ runtime/doc/vi_diff.txt, runtime/gvimrc_example.vim,
+ runtime/tools/README.txt, runtime/vimrc_example.vim, src/feature.h
+
+Patch 8.2.0018
+Problem: :join does not add white space where it should. (Zdenek Dohnal)
+Solution: Handle joining multiple lines properly.
+Files: src/ops.c, src/testdir/test_join.vim
+
+Patch 8.2.0019
+Problem: Cannot get number of lines of another buffer.
+Solution: Add "linecount" to getbufinfo(). (Yasuhiro Matsumoto,
+ closes #5370)
+Files: src/evalbuffer.c, src/testdir/test_bufwintabinfo.vim,
+ runtime/doc/eval.txt
+
+Patch 8.2.0020
+Problem: Mouse clicks in the command line not tested.
+Solution: Add tests. (Dominique Pellé, closes #5366)
+Files: src/testdir/test_termcodes.vim
+
+Patch 8.2.0021
+Problem: Timer test fails too often on Travis with macOS.
+Solution: Be less strict with the time.
+Files: src/testdir/test_timers.vim
+
+Patch 8.2.0022
+Problem: Click in popup window doesn't close it in the GUI. (Sergey Vlasov)
+Solution: When processing the selection also send a button release event.
+ (closes #5367)
+Files: src/gui.c
+
+Patch 8.2.0023
+Problem: Command line editing not sufficiently tested.
+Solution: Add more tests. (Dominique Pellé, closes #5374)
+Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim
+
+Patch 8.2.0024
+Problem: Filetype Rego not recognized.
+Solution: Add *.rego. (Matt Dunford, closes #5376)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0025
+Problem: Repeated word in comment.
+Solution: Remove one. (Rene Nyffenegger, closes #5384)
+Files: src/structs.h
+
+Patch 8.2.0026
+Problem: Still some /* */ comments.
+Solution: Convert to // comments.
+Files: src/message.c, src/message_test.c, src/misc1.c, src/misc2.c,
+ src/move.c
+
+Patch 8.2.0027
+Problem: Still some /* */ comments.
+Solution: Convert to // comments.
+Files: src/iid_ole.c, src/indent.c, src/insexpand.c, src/iscygpty.c,
+ src/version.c
+
+Patch 8.2.0028
+Problem: Searchpairpos() is not tested.
+Solution: Add tests. Also improve searchpair() testing. (Dominique Pellé,
+ closes #5388)
+Files: src/testdir/test_search.vim
+
+Patch 8.2.0029
+Problem: MS-Windows: crash with empty job command.
+Solution: Check for NULL result. (Yasuhiro Matsumoto, closes #5390)
+Files: src/channel.c, src/testdir/test_channel.vim
+
+Patch 8.2.0030
+Problem: "gF" does not work on output of "verbose command".
+Solution: Recognize " line " and translations. (closes #5391)
+Files: src/globals.h, src/eval.c, src/findfile.c, src/testdir/test_gf.vim
+
+Patch 8.2.0031 (after 8.2.0029)
+Problem: MS-Windows: test for empty job fails
+Solution: Check for error message, make it also fail on Unix.
+Files: src/channel.c, src/testdir/test_channel.vim
+
+Patch 8.2.0032 (after 8.2.0031)
+Problem: MS-Windows: test for blank job fails
+Solution: Check before escaping.
+Files: src/channel.c, src/testdir/test_channel.vim
+
+Patch 8.2.0033
+Problem: Crash when make_extmatch() runs out of memory.
+Solution: Check for NULL. (Dominique Pellé, closes #5392)
+Files: src/regexp_bt.c, src/regexp_nfa.c
+
+Patch 8.2.0034
+Problem: Missing check for out of memory.
+Solution: Check for NULL after vim_strsave(). (Dominique Pellé,
+ closes #5393)
+Files: src/filepath.c
+
+Patch 8.2.0035
+Problem: Saving and restoring called_emsg is clumsy.
+Solution: Count the number of error messages.
+Files: src/message.c, src/buffer.c, src/channel.c, src/drawscreen.c,
+ src/ex_cmds2.c, src/gui.c, src/highlight.c, src/main.c,
+ src/regexp.c, src/search.c, src/testing.c, src/globals.h
+
+Patch 8.2.0036
+Problem: Not enough test coverage for match functions.
+Solution: Add a few more test cases. (Dominique Pellé, closes #5394)
+ Add error number.
+Files: src/testdir/test_match.vim
+
+Patch 8.2.0037
+Problem: Missing renamed message.
+Solution: Now really add the error number.
+Files: src/highlight.c
+
+Patch 8.2.0038
+Problem: Spell suggestions insufficiently tested.
+Solution: Add spell suggestion tests. (Dominique Pellé, closes #5398)
+Files: src/testdir/test_spell.vim
+
+Patch 8.2.0039
+Problem: Memory access error when "z=" has no suggestions.
+Solution: Check for negative index.
+Files: src/testdir/test_spell.vim, src/spellsuggest.c
+
+Patch 8.2.0040
+Problem: Timers test is still flaky on Travis for Mac.
+Solution: Run separately instead of as part of test_alot.
+Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim
+
+Patch 8.2.0041
+Problem: Leaking memory when selecting spell suggestion.
+Solution: Free previous value at the right time.
+Files: src/spellsuggest.c
+
+Patch 8.2.0042
+Problem: Clearing funccal values twice.
+Solution: Remove clearing individual fields.
+Files: src/userfunc.c
+
+Patch 8.2.0043
+Problem: Timers test is still flaky on Travis for Mac.
+Solution: Increase maximum expected time.
+Files: src/testdir/test_timers.vim
+
+Patch 8.2.0044
+Problem: Expression type is used inconsistently.
+Solution: Add "ETYPE_IS" and "ETYPE_ISNOT" as separate enum values. Rename
+ "TYPE_" to "ETYPE_" to avoid confusion.
+Files: src/structs.h, src/eval.c, src/proto/eval.pro, src/debugger.c
+
+Patch 8.2.0045 (after 8.2.0044)
+Problem: Script test fails.
+Solution: For numbers "is" and "isnot" work like "==" and "!=".
+Files: src/eval.c
+
+Patch 8.2.0046
+Problem: Tests for spell suggestions are slow.
+Solution: Use shorter words. Test with latin1 and utf-8 to cover more code.
+ (Dominique Pellé, closes #5399)
+Files: src/testdir/test_spell.vim
+
+Patch 8.2.0047
+Problem: Cannot skip tests for specific MS-Windows platform.
+Solution: Add windowsversion().
+Files: src/os_win32.c, src/globals.h, src/evalfunc.c,
+ runtime/doc/eval.txt, src/testdir/gen_opt_test.vim,
+ src/testdir/test_options.vim
+
+Patch 8.2.0048
+Problem: Another timers test is flaky on Travis for Mac.
+Solution: Increase maximum expected time.
+Files: src/testdir/test_timers.vim
+
+Patch 8.2.0049
+Problem: Command line completion not fully tested.
+Solution: Add more test cases. Make help sorting stable. (Dominique Pellé,
+ closes #5402)
+Files: src/ex_cmds.c, src/testdir/test_cd.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_help.vim,
+ src/testdir/test_menu.vim, src/testdir/test_options.vim,
+ src/testdir/test_syntax.vim
+
+Patch 8.2.0050
+Problem: After deleting a file mark it is still in viminfo.
+Solution: When a file mark was deleted more recently than the mark in the
+ merged viminfo file was updated, do not store the mark. (Pavol
+ Juhas, closes #5401, closes #1339)
+Files: src/mark.c, src/testdir/test_marks.vim,
+ src/testdir/test_viminfo.vim, src/viminfo.c
+
+Patch 8.2.0051 (after 8.2.0049)
+Problem: Command line completion test skipped. (Christian Brabandt)
+Solution: Invert condition.
+Files: src/testdir/test_cmdline.vim
+
+Patch 8.2.0052
+Problem: More-prompt not properly tested.
+Solution: Add a test case. (Dominique Pellé, closes #5404)
+Files: src/testdir/test_messages.vim
+
+Patch 8.2.0053
+Problem: windowsversion() does not always return the right value.
+Solution: Add a compatibility section in the manifest. (Ken Takata,
+ closes #5407)
+Files: src/gvim.exe.mnf
+
+Patch 8.2.0054
+Problem: :diffget and :diffput don't have good completion.
+Solution: Add proper completion. (Dominique Pellé, closes #5409)
+Files: runtime/doc/eval.txt, src/buffer.c, src/cmdexpand.c,
+ src/testdir/test_diffmode.vim, src/usercmd.c, src/vim.h
+
+Patch 8.2.0055
+Problem: Cannot use ":gui" in vimrc with VIMDLL enabled.
+Solution: Change the logic, check "gui.starting". (Ken Takata, closes #5408)
+Files: src/gui.c
+
+Patch 8.2.0056
+Problem: Execution stack is incomplete and inefficient.
+Solution: Introduce a proper execution stack and use it instead of
+ sourcing_name/sourcing_lnum. Create a string only when used.
+Files: src/structs.h, src/globals.h, src/autocmd.c, src/buffer.c
+ src/debugger.c, src/ex_docmd.c, src/ex_eval.c, src/highlight.c,
+ src/main.c, src/map.c, src/message.c, src/proto/scriptfile.pro,
+ src/scriptfile.c, src/option.c, src/profiler.c, src/spellfile.c,
+ src/term.c, src/testing.c, src/usercmd.c, src/userfunc.c,
+ src/kword_test.c, src/testdir/test_debugger.vim
+
+Patch 8.2.0057 (after 8.2.0056)
+Problem: Cannot build with small features.
+Solution: Add #ifdefs.
+Files: src/scriptfile.c
+
+Patch 8.2.0058
+Problem: Running tests changes ~/.viminfo.
+Solution: Make 'viminfo' empty when summarizing tests results. (closes #5414)
+Files: src/testdir/summarize.vim
+
+Patch 8.2.0059
+Problem: Compiler warnings for unused variables in small build. (Tony
+ Mechelynck)
+Solution: Add #ifdef.
+Files: src/scriptfile.c
+
+Patch 8.2.0060
+Problem: Message test only runs with one encoding. (Dominique Pellé)
+Solution: Run the test with "utf-8" and "latin1". Fix underflow. (related
+ to #5410)
+Files: src/message_test.c, src/message.c
+
+Patch 8.2.0061
+Problem: The execute stack can grow big and never shrinks.
+Solution: Reduce the size in garbage collect.
+Files: src/eval.c
+
+Patch 8.2.0062
+Problem: Memory test is flaky on FreeBSD.
+Solution: Add a short sleep before getting the first size.
+Files: src/testdir/test_memory_usage.vim
+
+Patch 8.2.0063
+Problem: Wrong size argument to vim_snprintf(). (Dominique Pellé)
+Solution: Reduce the size by the length. (related to #5410)
+Files: src/ops.c
+
+Patch 8.2.0064
+Problem: Diffmode completion doesn't use per-window setting.
+Solution: Check if a window is in diff mode. (Dominique Pellé, closes #5419)
+Files: src/buffer.c, src/testdir/test_diffmode.vim
+
+Patch 8.2.0065
+Problem: Amiga and alikes: autoopen only used on Amiga OS4.
+Solution: Adjust #ifdefs. (Ola Söder, closes #5413)
+Files: src/os_amiga.c
+
+Patch 8.2.0066
+Problem: Some corners of vim_snprintf() are not tested.
+Solution: Add a test in C. (Dominique Pellé, closes #5422)
+Files: src/message_test.c
+
+Patch 8.2.0067
+Problem: ERROR_UNKNOWN clashes on some systems.
+Solution: Rename ERROR_ to FCERR_. (Ola Söder, closes #5415)
+Files: src/evalfunc.c, src/userfunc.c, src/vim.h
+
+Patch 8.2.0068
+Problem: Crash when using Python 3 with "utf32" encoding. (Dominique Pellé)
+Solution: Use "utf-8" whenever enc_utf8 is set. (closes #5423)
+Files: src/testdir/test_python3.vim, src/if_py_both.h
+
+Patch 8.2.0069
+Problem: ETYPE_ is used for two different enums.
+Solution: Rename one to use EXPR_.
+Files: src/structs.h, src/eval.c, src/debugger.c
+
+Patch 8.2.0070
+Problem: Crash when using Python 3 with "debug" encoding. (Dominique Pellé)
+Solution: Use "euc-jp" whenever enc_dbcs is set.
+Files: src/testdir/test_python3.vim, src/if_py_both.h
+
+Patch 8.2.0071
+Problem: Memory test often fails on Cirrus CI.
+Solution: Allow for more tolerance in the upper limit. Remove sleep.
+Files: src/testdir/test_memory_usage.vim
+
+Patch 8.2.0072 (after 8.2.0071)
+Problem: Memory test still fails on Cirrus CI.
+Solution: Allow for a tiny bit more tolerance in the upper limit.
+Files: src/testdir/test_memory_usage.vim
+
+Patch 8.2.0073
+Problem: Initializing globals with COMMA is clumsy.
+Solution: Use INIT2(), INIT3(), etc.
+Files: src/vim.h, src/globals.h
+
+Patch 8.2.0074
+Problem: Python 3 unicode test sometimes fails.
+Solution: Make 'termencoding' empty. Correct number of error message.
+Files: src/change.c, runtime/doc/options.txt, runtime/doc/message.txt,
+ src/testdir/test_python3.vim
+
+Patch 8.2.0075
+Problem: Python 3 unicode test still sometimes fails.
+Solution: Skip the test when 'termencoding' is not empty.
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.0076
+Problem: Python 3 unicode test fails on MS-Windows.
+Solution: Do not set 'encoding' to "debug" on MS-Windows.
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.0077
+Problem: settagstack() cannot truncate at current index.
+Solution: Add the "t" action. (Yegappan Lakshmanan, closes #5417)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/tag.c,
+ src/testdir/test_tagjump.vim
+
+Patch 8.2.0078
+Problem: Expanding <sfile> works differently the second time.
+Solution: Keep the expanded name when redefining a function. (closes #5425)
+Files: src/testdir/test_vimscript.vim, src/userfunc.c
+
+Patch 8.2.0079
+Problem: Python 3 unicode test still fails on MS-Windows.
+Solution: Do not set 'encoding' to "euc-tw" on MS-Windows.
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.0080
+Problem: Globals using INIT4() are not in the tags file.
+Solution: Adjust the tags command.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0081
+Problem: MS-Windows also need the change to support INIT4().
+Solution: Add the ctags arguments. (Ken Takata)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak
+
+Patch 8.2.0082
+Problem: When reusing a buffer listeners are not cleared. (Axel Forsman)
+Solution: Clear listeners when reusing a buffer. (closes #5431)
+Files: src/testdir/test_listener.vim, src/buffer.c
+
+Patch 8.2.0083
+Problem: Text properties wrong when tabs and spaces are exchanged.
+Solution: Take text properties into account. (Nobuhiro Takasaki,
+ closes #5427)
+Files: src/edit.c, src/testdir/test_textprop.vim
+
+Patch 8.2.0084
+Problem: Complete item "user_data" can only be a string.
+Solution: Accept any type of variable. (closes #5412)
+Files: src/testdir/test_ins_complete.vim, src/insexpand.c, src/dict.c,
+ src/proto/dict.pro, src/eval.c, runtime/doc/insert.txt
+
+Patch 8.2.0085
+Problem: Dead code in builtin functions.
+Solution: Clean up the code.
+Files: src/evalvars.c, src/sound.c, src/textprop.c
+
+Patch 8.2.0086 (after 8.2.0084)
+Problem: Build error for small version. (Tony Mechelynck)
+Solution: Only use "user_data" with the +eval feature. Remove unused
+ variable.
+Files: src/insexpand.c, src/dict.c
+
+Patch 8.2.0087
+Problem: Crash in command line expansion when out of memory.
+Solution: Check for NULL pointer. Also make ExpandGeneric() static.
+ (Dominique Pellé, closes #5437)
+Files: src/cmdexpand.c, src/proto/cmdexpand.pro
+
+Patch 8.2.0088
+Problem: Insufficient tests for tags; bug in using extra tag field when
+ using an ex command to position the cursor.
+Solution: Fix the bug, add more tests. (Yegappan Lakshmanan, closes #5439)
+Files: runtime/doc/tagsrch.txt, src/tag.c,
+ src/testdir/test_ins_complete.vim, src/testdir/test_tagfunc.vim,
+ src/testdir/test_tagjump.vim, src/testdir/test_taglist.vim
+
+Patch 8.2.0089
+Problem: Crash when running out of memory in :setfiletype completion.
+Solution: Do not allocate memory. (Dominique Pellé, closes #5438)
+Files: src/cmdexpand.c
+
+Patch 8.2.0090
+Problem: Generated files show up in git status.
+Solution: Ignore a few more files.
+Files: .gitignore
+
+Patch 8.2.0091
+Problem: Compiler warnings for size_t / int types.
+Solution: Change type to size_t. (Mike Williams)
+Files: src/scriptfile.c
+
+Patch 8.2.0092
+Problem: Tags functionality insufficiently tested.
+Solution: Add more tags tests. (Yegappan Lakshmanan, closes #5446)
+Files: src/testdir/test_tagjump.vim
+
+Patch 8.2.0093
+Problem: win_splitmove() can make Vim hang.
+Solution: Check windows exists in the current tab page. (closes #5444)
+Files: src/testdir/test_window_cmd.vim, src/evalwindow.c
+
+Patch 8.2.0094
+Problem: MS-Windows: cannot build with Strawberry Perl 5.30.
+Solution: Define __builtin_expect() as a workaround. (Ken Takata,
+ closes #5267)
+Files: src/if_perl.xs
+
+Patch 8.2.0095
+Problem: Cannot specify exit code for :cquit.
+Solution: Add optional argument. (Thinca, Yegappan Lakshmanan, closes #5442)
+Files: runtime/doc/quickfix.txt, src/ex_cmds.h, src/ex_docmd.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.0096
+Problem: Cannot create tiny popup window in last column. (Daniel Steinberg)
+Solution: Remove position limit. (closes #5447)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_20.dump,
+ src/testdir/dumps/Test_popupwin_21.dump
+
+Patch 8.2.0097
+Problem: Crash with autocommand and spellfile. (Tim Pope)
+Solution: Do not pop exestack when not pushed. (closes #5450)
+Files: src/testdir/test_autocmd.vim, src/spellfile.c
+
+Patch 8.2.0098
+Problem: Exe stack length can be wrong without being detected.
+Solution: Add a check when ABORT_ON_INTERNAL_ERROR is defined.
+Files: src/macros.h, src/autocmd.c, src/buffer.c, src/ex_docmd.c,
+ src/main.c, src/map.c, src/scriptfile.c, src/spellfile.c,
+ src/userfunc.c
+
+Patch 8.2.0099
+Problem: Use of NULL pointer when out of memory.
+Solution: Check for NULL pointer. (Dominique Pellé, closes #5449)
+Files: src/cmdexpand.c
+
+Patch 8.2.0100
+Problem: Macros for Ruby are too complicated.
+Solution: Do not use DYNAMIC_RUBY_VER, use RUBY_VERSION. (Ken Takata,
+ closes #5452)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
+ src/configure.ac, src/if_ruby.c
+
+Patch 8.2.0101
+Problem: Crash when passing null object to ":echomsg".
+Solution: Check for NULL pointer. (Yasuhiro Matsumoto, closes #5460)
+Files: src/eval.c, src/testdir/test_messages.vim
+
+Patch 8.2.0102
+Problem: Messages test fails in small version.
+Solution: Only use test_null_job() when available.
+Files: src/testdir/test_messages.vim
+
+Patch 8.2.0103
+Problem: Using null object with execute() has strange effects.
+Solution: Give an error message for Job and Channel.
+Files: src/testdir/test_execute_func.vim, src/globals.h, src/eval.c,
+ src/evalfunc.c
+
+Patch 8.2.0104
+Problem: Using channel or job with ":execute" has strange effects.
+Solution: Give an error message for Job and Channel.
+Files: src/testdir/test_eval_stuff.vim, src/eval.c
+
+Patch 8.2.0105
+Problem: Vim license not easy to find on github.
+Solution: Add a separate LICENCE file. (closes #5458)
+Files: LICENSE, Filelist
+
+Patch 8.2.0106
+Problem: Printf formats are not exactly right.
+Solution: Adjust signed/unsigned conversions. (Frazer Clews, closes #5456)
+Files: runtime/tools/ccfilter.c, src/libvterm/src/parser.c,
+ src/libvterm/src/pen.c, src/ui.c
+
+Patch 8.2.0107
+Problem: Hgignore is out of sync from gitignore.
+Solution: Add lines to hgignore. (Ken Takata)
+Files: .hgignore
+
+Patch 8.2.0108
+Problem: When sign text is changed a manual redraw is needed. (Pontus
+ Lietzler)
+Solution: Redraw automatically. (closes #5455)
+Files: src/testdir/test_signs.vim, src/sign.c,
+ src/testdir/dumps/Test_sign_cursor_1.dump,
+ src/testdir/dumps/Test_sign_cursor_2.dump,
+ src/testdir/dumps/Test_sign_cursor_3.dump,
+ src/testdir/dumps/Test_sign_cursor_01.dump,
+ src/testdir/dumps/Test_sign_cursor_02.dump
+
+Patch 8.2.0109
+Problem: Corrupted text properties when expanding spaces.
+Solution: Reallocate the line. (Nobuhiro Takasaki, closes #5457)
+Files: src/edit.c, src/testdir/test_textprop.vim
+
+Patch 8.2.0110
+Problem: prop_find() is not implemented.
+Solution: Implement prop_find(). (Ryan Hackett, closes #5421, closes #4970)
+Files: src/evalfunc.c, src/proto/textprop.pro,
+ src/testdir/test_textprop.vim, src/textprop.c,
+ runtime/doc/textprop.txt
+
+Patch 8.2.0111
+Problem: VAR_SPECIAL is also used for booleans.
+Solution: Add VAR_BOOL for better type checking.
+Files: src/structs.h, src/dict.c, src/eval.c, src/evalfunc.c,
+ src/evalvars.c, src/if_lua.c, src/if_mzsch.c, src/if_py_both.h,
+ src/if_ruby.c, src/json.c, src/popupmenu.c, src/proto/dict.pro,
+ src/testing.c, src/vim.h, src/viminfo.c
+
+Patch 8.2.0112
+Problem: Illegal memory access when using 'cindent'.
+Solution: Check for NUL byte. (Dominique Pellé, closes #5470)
+Files: src/cindent.c, src/testdir/test_cindent.vim
+
+Patch 8.2.0113 (after 8.2.0095)
+Problem: "make cmdidxs" fails.
+Solution: Allow address for ":cquit". Add --not-a-term to avoid a delay.
+Files: src/ex_cmds.h, src/Makefile, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak
+
+Patch 8.2.0114
+Problem: Info about sourced scripts is scattered.
+Solution: Use scriptitem_T for info about a script, including s: variables.
+ Drop ga_scripts.
+Files: src/structs.h, src/evalvars.c, src/scriptfile.c, src/eval.c
+
+Patch 8.2.0115
+Problem: Byte2line() does not work correctly with text properties. (Billie
+ Cleek)
+Solution: Take the bytes of the text properties into account.
+ (closes #5334)
+Files: src/testdir/test_textprop.vim, src/memline.c
+
+Patch 8.2.0116
+Problem: BufEnter autocmd not triggered on ":tab drop". (Andy Stewart)
+Solution: Decrement autocmd_no_enter for the last file. (closes #1660,
+ closes #5473)
+Files: src/arglist.c, src/testdir/test_tabpage.vim
+
+Patch 8.2.0117
+Problem: Crash when using gettabwinvar() with invalid arguments. (Yilin
+ Yang)
+Solution: Use "curtab" if "tp" is NULL. (closes #5475)
+Files: src/evalwindow.c, src/testdir/test_getvar.vim
+
+Patch 8.2.0118
+Problem: Crash when cycling to buffers involving popup window.
+Solution: Do not decrement buffer reference count.
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_infopopup_7.dump
+
+Patch 8.2.0119
+Problem: Message test fails on some platforms. (Elimar Riesebieter)
+Solution: Add type cast to vim_snprintf() argument. (Dominique Pellé)
+Files: src/message_test.c
+
+Patch 8.2.0120
+Problem: virtcol() does not check arguments to be valid, which may lead to
+ a crash.
+Solution: Check the column to be valid. Do not decrement MAXCOL.
+ (closes #5480)
+Files: src/evalfunc.c, src/testdir/test_marks.vim
+
+Patch 8.2.0121
+Problem: filter() and map() on blob don't work.
+Solution: Correct the code. (closes #5483)
+Files: src/list.c, src/testdir/test_blob.vim
+
+Patch 8.2.0122
+Problem: Readme files still mention MS-DOS.
+Solution: Update readme files. (Ken Takata, closes #5486)
+Files: README.md, README.txt, READMEdir/README_dos.txt,
+ READMEdir/README_srcdos.txt, READMEdir/README_w32s.txt,
+ runtime/doc/os_win32.txt
+
+Patch 8.2.0123
+Problem: complete_info() does not work when CompleteDone is triggered.
+Solution: Trigger CompleteDone before clearing the info.
+Files: src/insexpand.c, runtime/doc/autocmd.txt,
+ src/testdir/test_ins_complete.vim
+
+Patch 8.2.0124
+Problem: Compiler warnings for variable types.
+Solution: Change type, add type cast. (Mike Williams)
+Files: src/memline.c
+
+Patch 8.2.0125
+Problem: :mode no longer works for any system.
+Solution: Always give an error message.
+Files: src/ex_docmd.c, runtime/doc/quickref.txt, src/os_amiga.c,
+ src/proto/os_amiga.pro, src/os_mswin.c, src/proto/os_mswin.pro,
+ src/os_unix.c, src/proto/os_unix.pro
+
+Patch 8.2.0126 (after 8.2.0124)
+Problem: Textprop test fails.
+Solution: Fix sign in computation.
+Files: src/memline.c
+
+Patch 8.2.0127
+Problem: Some buffer commands work in a popup window.
+Solution: Disallow :bnext, :bprev, etc. (Naruhiko Nishino, closes #5494)
+Files: src/ex_docmd.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.0128
+Problem: Cannot list options one per line.
+Solution: Use ":set!" to list one option per line.
+Files: src/ex_docmd.c, src/option.c, src/proto/option.pro, src/vim.h,
+ src/ex_cmds.h, src/optiondefs.h, src/testdir/test_options.vim,
+ runtime/doc/options.txt
+
+Patch 8.2.0129
+Problem: MS-Windows installer doesn't use Turkish translations.
+Solution: Enable the Turkish translations and fix a few. (Emir Sarı,
+ closes #5493)
+Files: nsis/gvim.nsi, nsis/lang/turkish.nsi
+
+Patch 8.2.0130
+Problem: Python3 ranges are not tested.
+Solution: Add test. (Dominique Pellé, closes #5498)
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.0131
+Problem: Command line is not cleared when switching tabs and the command
+ line height differs.
+Solution: Set the "clear_cmdline" flag when needed. (Naruhiko Nishino,
+ closes #5495)
+Files: src/testdir/dumps/Test_cmdlineclear_tabenter.dump,
+ src/testdir/test_cmdline.vim, src/window.c
+
+Patch 8.2.0132
+Problem: Script may be re-used when deleting and creating a new one.
+Solution: When the inode matches, also check the file name.
+Files: src/scriptfile.c, src/testdir/test_source.vim
+
+Patch 8.2.0133
+Problem: Invalid memory access with search command.
+Solution: When :normal runs out of characters in bracketed paste mode break
+ out of the loop.(closes #5511)
+Files: src/testdir/test_search.vim, src/edit.c
+
+Patch 8.2.0134
+Problem: Some map functionality not covered by tests.
+Solution: Add tests. (Yegappan Lakshmanan, closes #5504)
+Files: src/testdir/test_maparg.vim, src/testdir/test_mapping.vim
+
+Patch 8.2.0135 (after 8.2.0133)
+Problem: Bracketed paste can still cause invalid memory access. (Dominique
+ Pellé)
+Solution: Check for NULL pointer.
+Files: src/edit.c, src/testdir/test_search.vim
+
+Patch 8.2.0136
+Problem: Stray ch_logfile() call.
+Solution: Remove it. (closes #5503)
+Files: src/testdir/test_source.vim
+
+Patch 8.2.0137
+Problem: Crash when using win_execute() from a new tab.
+Solution: Set the tp_*win pointers. (Ozaki Kiichi, closes #5512)
+Files: src/testdir/test_winbuf_close.vim, src/window.c
+
+Patch 8.2.0138
+Problem: Memory leak when starting a job fails.
+Solution: Free the list of arguments. (Ozaki Kiichi, closes #5510)
+Files: src/channel.c, src/testdir/test_channel.vim
+
+Patch 8.2.0139
+Problem: MS-Windows: default for IME is inconsistent.
+Solution: Also make IME default enabled with MVC. (Ken Takata, closes #5508)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0140
+Problem: CI does not test building doc tags.
+Solution: Add the vimtags/gcc build. Cleanup showing version. (Ozaki Kiichi,
+ closes #5513)
+Files: .travis.yml, Filelist, ci/if_ver-1.vim, ci/if_ver-2.vim,
+ ci/if_ver-cmd.vim, runtime/doc/Makefile, runtime/doc/doctags.vim,
+ src/testdir/if_ver-1.vim, src/testdir/if_ver-2.vim
+
+Patch 8.2.0141
+Problem: No swift filetype detection.
+Solution: Add swift, swiftgyb and sil. (Emir Sarı, closes #5517)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0142
+Problem: Possible to enter popup window with CTRL-W p. (John Devin)
+Solution: Check entered window is not a popup window. (closes #5515)
+Files: src/window.c, src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_previewpopup_9.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_10.dump
+
+Patch 8.2.0143
+Problem: Coverity warning for possible use of NULL pointer.
+Solution: Check argv is not NULL.
+Files: src/channel.c
+
+Patch 8.2.0144
+Problem: Some mapping code is not fully tested.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #5519)
+Files: src/testdir/test_langmap.vim, src/testdir/test_maparg.vim,
+ src/testdir/test_mapping.vim
+
+Patch 8.2.0145
+Problem: Using #error for compilation errors should be OK now.
+Solution: Use #error. (Ken Takata, closes #5299)
+Files: src/blowfish.c, src/vim.h
+
+Patch 8.2.0146
+Problem: Wrong indent when 'showbreak' and 'breakindent' are set and
+ 'briopt' includes "sbr".
+Solution: Reset "need_showbreak" where needed. (Ken Takata, closes #5523)
+Files: src/drawline.c, src/testdir/test_breakindent.vim
+
+Patch 8.2.0147
+Problem: Block Visual mode operators not correct when 'linebreak' set.
+Solution: Set w_p_lbr to lbr_saved more often. (Ken Takata, closes #5524)
+Files: src/ops.c, src/testdir/test_listlbr.vim
+
+Patch 8.2.0148
+Problem: Mapping related function in wrong source file.
+Solution: Move the function. Add a few more test cases. (Yegappan
+ Lakshmanan, closes #5528)
+Files: src/map.c, src/proto/term.pro, src/term.c,
+ src/testdir/test_mapping.vim
+
+Patch 8.2.0149
+Problem: Maintaining a Vim9 branch separately is more work.
+Solution: Merge the Vim9 script changes.
+Files: README.md, README_VIM9.md, runtime/doc/Makefile,
+ runtime/doc/eval.txt, runtime/doc/options.txt, runtime/doc/tags,
+ runtime/doc/vim9.txt, runtime/ftplugin/vim.vim,
+ runtime/indent/vim.vim, runtime/syntax/vim.vim,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile, src/blob.c,
+ src/channel.c, src/dict.c, src/eval.c, src/evalbuffer.c,
+ src/evalfunc.c, src/evalvars.c, src/ex_cmdidxs.h, src/ex_cmds.h,
+ src/ex_docmd.c, src/ex_eval.c, src/filepath.c, src/globals.h,
+ src/gui.c, src/if_lua.c, src/if_py_both.h, src/insexpand.c,
+ src/json.c, src/list.c, src/macros.h, src/main.c, src/message.c,
+ src/misc1.c, src/proto.h, src/proto/blob.pro, src/proto/eval.pro,
+ src/proto/evalfunc.pro, src/proto/evalvars.pro,
+ src/proto/ex_docmd.pro, src/proto/ex_eval.pro, src/proto/list.pro,
+ src/proto/message.pro, src/proto/scriptfile.pro,
+ src/proto/userfunc.pro, src/proto/vim9compile.pro,
+ src/proto/vim9execute.pro, src/proto/vim9script.pro,
+ src/scriptfile.c, src/session.c, src/structs.h, src/syntax.c,
+ src/testdir/Make_all.mak, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim, src/testing.c, src/userfunc.c,
+ src/vim.h, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/vim9script.c, src/viminfo.c
+
+Patch 8.2.0150
+Problem: Cannot define python function when using :execute. (Yasuhiro
+ Matsumoto)
+Solution: Do not recognize "def" inside "function.
+Files: src/testdir/test_vim9_script.vim, src/userfunc.c
+
+Patch 8.2.0151
+Problem: Detecting a script was already sourced is unreliable.
+Solution: Do not use the inode number.
+Files: src/scriptfile.c, src/structs.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0152
+Problem: Restoring ctrl_x_mode is not needed.
+Solution: Remove restoring the old value, it's changed again soon.
+Files: src/insexpand.c
+
+Patch 8.2.0153
+Problem: Warning shows when listing version info.
+Solution: Use "-u NONE". (Ozaki Kiichi, closes #5534)
+Files: .travis.yml
+
+Patch 8.2.0154
+Problem: Reallocating the list of scripts is inefficient.
+Solution: Instead of using a growarray of scriptitem_T, store pointers and
+ allocate each scriptitem_T separately. Also avoids that the
+ growarray pointers change when sourcing a new script.
+Files: src/globals.h, src/eval.c, src/evalvars.c, src/ex_docmd.c,
+ src/profiler.c, src/scriptfile.c, src/vim9compile.c,
+ src/vim9execute.c, src/vim9script.c
+
+Patch 8.2.0155
+Problem: Warnings from MinGW compiler. (John Marriott) Json test fails when
+ building without +float feature.
+Solution: Init variables. Fix Json parsing. Skip a few tests that require
+ the +float feature.
+Files: src/vim9script.c, src/vim9compile.c, src/vim9execute.c,
+ src/if_py_both.h, src/json.c, src/testdir/test_method.vim
+
+Patch 8.2.0156
+Problem: Various typos in source files and tests.
+Solution: Fix the typos. (Emir Sarı, closes #5532)
+Files: Makefile, src/INSTALLvms.txt, src/Make_vms.mms, src/beval.h,
+ src/buffer.c, src/charset.c, src/evalvars.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/getchar.c, src/gui.c, src/gui_mac.c,
+ src/gui_photon.c, src/if_perl.xs,
+ src/libvterm/t/11state_movecursor.test,
+ src/libvterm/t/41screen_unicode.test, src/mbyte.c, src/memline.c,
+ src/normal.c, src/ops.c, src/option.c, src/option.h,
+ src/os_unix.c, src/os_win32.c, src/quickfix.c, src/register.c,
+ src/spell.c, src/tag.c, src/term.c,
+ src/testdir/test_breakindent.vim, src/testdir/test_channel.vim,
+ src/testdir/test_cindent.vim, src/testdir/test_digraph.vim,
+ src/testdir/test_edit.vim, src/testdir/test_netbeans.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_registers.vim,
+ src/testdir/test_stat.vim, src/ui.c, src/xxd/xxd.c
+
+Patch 8.2.0157
+Problem: Vim9 script files not in list of distributed files.
+Solution: Add the entries.
+Files: Filelist
+
+Patch 8.2.0158 (after 8.2.0123)
+Problem: Triggering CompleteDone earlier is not backwards compatible.
+ (Daniel Hahler)
+Solution: Add CompleteDonePre instead.
+Files: src/insexpand.c, runtime/doc/autocmd.txt, src/autocmd.c,
+ src/vim.h, src/testdir/test_ins_complete.vim
+
+Patch 8.2.0159
+Problem: Non-materialized range() list causes problems. (Fujiwara Takuya)
+Solution: Materialize the list where needed.
+Files: src/testdir/test_functions.vim, src/testdir/test_python3.vim,
+ src/userfunc.c, src/evalfunc.c, src/highlight.c, src/evalvars.c,
+ src/popupmenu.c, src/insexpand.c, src/json.c, src/channel.c,
+ src/eval.c
+
+Patch 8.2.0160 (after 8.2.0159)
+Problem: Range test fails.
+Solution: Include change in list code. (#5541)
+Files: src/list.c
+
+Patch 8.2.0161
+Problem: Not recognizing .gv file as dot filetype.
+Solution: Add *.gv to dot pattern. (closes #5544)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0162
+Problem: Balloon test fails in the GUI.
+Solution: Skip test in the GUI.
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.0163
+Problem: Test hangs on MS-Windows console.
+Solution: use feedkeys() instead of test_feedinput(). (Ken Takata)
+Files: src/testdir/test_functions.vim, src/testing.c
+
+Patch 8.2.0164
+Problem: Test_alot takes too long.
+Solution: Run several tests individually.
+Files: src/testdir/test_alot.vim, src/testdir/Make_all.mak
+
+Patch 8.2.0165
+Problem: Coverity warning for using NULL pointer.
+Solution: Add missing "else".
+Files: src/vim9compile.c
+
+Patch 8.2.0166
+Problem: Coverity warning for using uninitialized variable.
+Solution: Check for failure.
+Files: src/vim9execute.c
+
+Patch 8.2.0167
+Problem: Coverity warning for ignoring return value.
+Solution: Check the return value and jump if failed.
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0168
+Problem: Coverity warning for assigning NULL to an option.
+Solution: Use empty string instead of NULL.
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0169
+Problem: Coverity warning for dead code.
+Solution: Check if inside try-finally.
+Files: src/vim9execute.c
+
+Patch 8.2.0170
+Problem: Coverity warning for ignoring return value.
+Solution: Check the return value and return if failed.
+Files: src/vim9compile.c
+
+Patch 8.2.0171
+Problem: Coverity warning for using uninitialized buffer.
+Solution: Check the skip flag.
+Files: src/userfunc.c
+
+Patch 8.2.0172
+Problem: Coverity warning for not restoring character.
+Solution: Restore the character also in case of failure.
+Files: src/vim9script.c
+
+Patch 8.2.0173
+Problem: Build fails with old compiler.
+Solution: Do not use anonymous unions. (John Marriott)
+Files: src/vim9compile.c, src/evalvars.c, src/list.c, src/structs.h,
+ src/evalfunc.c, src/channel.c, src/if_mzsch.c, src/if_py_both.h
+
+Patch 8.2.0174
+Problem: Various commands not completely tested.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #5551)
+Files: src/testdir/test_excmd.vim, src/testdir/test_fnameescape.vim,
+ src/testdir/test_ga.vim, src/testdir/test_global.vim,
+ src/testdir/test_move.vim, src/testdir/test_options.vim,
+ src/testdir/test_packadd.vim, src/testdir/test_sort.vim,
+ src/testdir/test_substitute.vim, src/testdir/test_textformat.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.0175
+Problem: Crash when removing list element in map().
+Solution: Lock the list. (closes #2652)
+Files: src/testdir/test_filter_map.vim, src/list.c
+
+Patch 8.2.0176
+Problem: Generating os headers does not work for Swedish.
+Solution: Set the locale to C. (Christian Brabandt, closes #5258)
+Files: src/osdef.sh
+
+Patch 8.2.0177
+Problem: Memory leak in get_tags().
+Solution: Free matches when finding a pseudo-tag line. (Dominique Pellé,
+ closes #5553)
+Files: src/tag.c
+
+Patch 8.2.0178
+Problem: With VTP the screen may not be restored properly.
+Solution: Add another set of saved RGB values. (Nobuhiro Takasaki,
+ closes #5548)
+Files: src/os_win32.c
+
+Patch 8.2.0179
+Problem: Still a few places where range() does not work.
+Solution: Fix using range() causing problems.
+Files: src/terminal.c, src/testdir/test_functions.vim,
+ src/testdir/test_popupwin.vim, src/popupwin.c, src/tag.c,
+ src/testdir/dumps/Test_popupwin_20.dump,
+ src/testdir/dumps/Test_popupwin_21.dump,
+ src/testdir/dumps/Test_popup_settext_07.dump, src/globals.h
+
+Patch 8.2.0180
+Problem: Test for wrapmargin fails if terminal is not 80 columns.
+Solution: Vertical split the window. (Ken Takata, closes #5554)
+Files: src/testdir/test_textformat.vim
+
+Patch 8.2.0181
+Problem: Problems parsing :term arguments.
+Solution: Improve parsing, fix memory leak, add tests. (Ozaki Kiichi,
+ closes #5536)
+Files: src/channel.c, src/proto/channel.pro, src/structs.h,
+ src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.0182
+Problem: Min() and max() materialize a range() list.
+Solution: Compute the result without materializing the list. (#5541)
+Files: src/evalfunc.c
+
+Patch 8.2.0183
+Problem: Tests fail when the float feature is disabled.
+Solution: Skip tests that don't work without float support.
+Files: src/testdir/shared.vim, src/testdir/test_blob.vim,
+ src/testdir/test_channel.vim, src/testdir/test_cscope.vim,
+ src/testdir/test_execute_func.vim, src/testdir/test_expr.vim,
+ src/testdir/test_functions.vim, src/testdir/test_lambda.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_lua.vim,
+ src/testdir/test_options.vim, src/testdir/test_partial.vim,
+ src/testdir/test_ruby.vim, src/testdir/test_sort.vim,
+ src/testdir/test_timers.vim, src/testdir/test_true_false.vim,
+ src/testdir/test_user_func.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vimscript.vim, src/testdir/test_regexp_latin.vim,
+ src/testdir/test_glob2regpat.vim
+
+Patch 8.2.0184
+Problem: Blob test fails.
+Solution: Check for different error when float feature is missing.
+Files: src/testdir/test_blob.vim
+
+Patch 8.2.0185
+Problem: Vim9 script: cannot use "if has()" to skip lines.
+Solution: Evaluate constant expression at runtime.
+Files: src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0186
+Problem: A couple of tests may fail when features are missing.
+Solution: Check for features. (Dominique Pellé, closes #5561)
+Files: src/testdir/test_functions.vim, src/testdir/test_highlight.vim
+
+Patch 8.2.0187
+Problem: Redundant code.
+Solution: Remove unused assignments. (Dominique Pellé, closes #5557)
+Files: src/vim9compile.c
+
+Patch 8.2.0188
+Problem: Check commands don't work well with Vim9 script.
+Solution: Improve constant expression handling.
+Files: src/vim9compile.c, src/testdir/check.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0189
+Problem: cd() with NULL argument crashes.
+Solution: Check for NULL. (Ken Takata, closes #5558)
+Files: src/testdir/test_cd.vim, src/ex_docmd.c
+
+Patch 8.2.0190
+Problem: Kotlin files are not recognized.
+Solution: Detect Kotlin files. (Alkeryn, closes #5560)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0191
+Problem: Cannot put a terminal in a popup window.
+Solution: Allow opening a terminal in a popup window. It will always have
+ keyboard focus until closed.
+Files: src/popupwin.c, src/proto/popupwin.pro, src/terminal.c,
+ src/proto/terminal.pro, src/macros.h, src/mouse.c,
+ src/highlight.c, src/drawline.c, src/optionstr.c, src/window.c,
+ src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_popup_1.dump,
+ src/testdir/dumps/Test_terminal_popup_2.dump,
+ src/testdir/dumps/Test_terminal_popup_3.dump
+
+Patch 8.2.0192 (after 8.2.0191)
+Problem: Build failure without +terminal feature.
+Solution: Add #ifdefs.
+Files: src/popupwin.c
+
+Patch 8.2.0193 (after 8.2.0191)
+Problem: Still build failure without +terminal feature.
+Solution: Add more #ifdefs.
+Files: src/macros.h
+
+Patch 8.2.0194 (after 8.2.0193)
+Problem: Some commands can cause problems in terminal popup.
+Solution: Disallow more commands.
+Files: src/macros.h, src/popupwin.c, src/proto/popupwin.pro,
+ src/arglist.c, src/ex_docmd.c, src/window.c,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.0195
+Problem: Some tests fail when run in the GUI.
+Solution: Make sure the window width is enough. In the GUI run terminal Vim
+ in the terminal, if possible.
+Files: src/testdir/test_highlight.vim, src/testdir/check.vim,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.0196
+Problem: Blocking commands for a finished job in a popup window.
+Solution: Do not block commands if the job has finished. Adjust test.
+Files: src/popupwin.c, src/testdir/test_popupwin.vim, src/window.c,
+ src/terminal.c, src/proto/terminal.pro
+
+Patch 8.2.0197
+Problem: Some Ex commands not sufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5565)
+Files: src/testdir/test_global.vim, src/testdir/test_help.vim,
+ src/testdir/test_help_tagjump.vim, src/testdir/test_options.vim,
+ src/testdir/test_substitute.vim, src/testdir/test_textformat.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.0198
+Problem: No tests for y/n prompt.
+Solution: Add tests. (Dominique Pellé, closes #5564)
+Files: src/testdir/test_messages.vim
+
+Patch 8.2.0199
+Problem: Vim9 script commands not sufficiently tested.
+Solution: Add more tests. Fix script-local function use.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim,
+ src/userfunc.c
+
+Patch 8.2.0200
+Problem: Vim9 script commands not sufficiently tested.
+Solution: Add more tests. Fix storing global variable. Make script
+ variables work.
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/evalvars.c,
+ src/proto/evalvars.pro, src/testdir/test_vim9_script.vim,
+ src/misc1.c, src/proto/misc1.pro
+
+Patch 8.2.0201
+Problem: Cannot assign to an imported variable.
+Solution: Make it work.
+Files: src/evalvars.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0202
+Problem: When 'lazyredraw' is set the window title may not be updated.
+Solution: Set "do_redraw" before entering the main loop. (Jason Franklin)
+Files: src/main.c
+
+Patch 8.2.0203
+Problem: :helptags and some other functionality not tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5567)
+Files: src/testdir/test_compiler.vim, src/testdir/test_ex_mode.vim,
+ src/testdir/test_excmd.vim, src/testdir/test_filechanged.vim,
+ src/testdir/test_help.vim, src/testdir/test_help_tagjump.vim,
+ src/testdir/test_timers.vim, src/testdir/test_window_cmd.vim
+
+Patch 8.2.0204
+Problem: Crash when using winnr('j') in a popup window.
+Solution: Do not search for neighbors in a popup window. (closes #5568)
+Files: src/window.c, src/testdir/test_popupwin.vim, src/evalwindow.c
+
+Patch 8.2.0205
+Problem: Error code E899 used twice.
+Solution: Use E863 for the terminal in popup error.
+Files: src/popupwin.c
+
+Patch 8.2.0206
+Problem: Calling Vim9 function using default argument fails.
+Solution: Give an appropriate error. (closes #5572)
+Files: src/testdir/test_vim9_script.vim, src/vim9compile.c,
+ src/vim9execute.c
+
+Patch 8.2.0207
+Problem: Crash when missing member type on list argument.
+Solution: Check for invalid type. (closes #5572)
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0208
+Problem: Fnamemodify() does not apply ":~" when followed by ":.".
+Solution: Don't let a failing ":." cause the ":~" to be skipped. (Yasuhiro
+ Matsumoto, closes #5577)
+Files: runtime/doc/cmdline.txt, src/filepath.c,
+ src/testdir/test_fnamemodify.vim
+
+Patch 8.2.0209
+Problem: Function a bit far away from where it's used.
+Solution: Move function close to where it's used. (Ken Takata, closes #5569)
+Files: src/fileio.c, src/filepath.c
+
+Patch 8.2.0210
+Problem: Coverity complains about uninitialized field.
+Solution: Initialize the field.
+Files: src/vim9compile.c
+
+Patch 8.2.0211
+Problem: Test for ANSI colors fails without an "ls" command.
+Solution: Use "dir". (Ken Takata, closes #5582)
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.0212
+Problem: Missing search/substitute pattern hardly tested.
+Solution: Add test_clear_search_pat() and tests. (Yegappan Lakshmanan,
+ closes #5579)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/regexp.pro,
+ src/proto/search.pro, src/proto/testing.pro, src/regexp.c,
+ src/search.c, src/testdir/test_quickfix.vim,
+ src/testdir/test_search.vim, src/testdir/test_sort.vim,
+ src/testdir/test_substitute.vim, src/testing.c
+
+Patch 8.2.0213
+Problem: Configure does not recognize gcc 10.0 and later.
+Solution: Adjust the pattern matching the version number. (Sergei
+ Trofimovich, closes #5580)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0214
+Problem: A popup window with a terminal can be made hidden.
+Solution: Disallow hiding a terminal popup.
+Files: src/testdir/test_terminal.vim, src/popupwin.c,
+ src/testdir/dumps/Test_terminal_popup_4.dump
+
+Patch 8.2.0215 (after 8.2.0208)
+Problem: Wrong file name shortening. (Ingo Karkat)
+Solution: Better check for path separator. (Yasuhiro Matsumoto,
+ closes #5583, closes #5584)
+Files: src/filepath.c, src/testdir/test_fnamemodify.vim
+
+Patch 8.2.0216
+Problem: Several Vim9 instructions are not tested.
+Solution: Add more tests. Fix :disassemble output. Make catch with pattern
+ work.
+Files: src/testdir/test_vim9_script.vim, src/vim9execute.c,
+ src/vim9compile.c
+
+Patch 8.2.0217 (after 8.2.0214)
+Problem: Terminal test fails on Mac.
+Solution: Add a short wait.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0218
+Problem: Several Vim9 instructions are not tested.
+Solution: Add more tests.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0219 (after 8.2.0217)
+Problem: Terminal test still fails on Mac.
+Solution: Skip part of the test on Mac.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0220
+Problem: Terminal test did pass on Mac.
+Solution: Remove the skip again.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0221
+Problem: No test for Vim9 += and ..=.
+Solution: Add tests.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0222
+Problem: Vim9: optional function arguments don't work yet.
+Solution: Implement optional function arguments.
+Files: src/userfunc.c, src/vim9compile.c, src/vim9execute.c,
+ src/structs.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0223
+Problem: Some instructions not yet tested.
+Solution: Disassemble more instructions. Move tests to a new file. Compile
+ call to s:function().
+Files: src/testdir/test_vim9_script.vim, src/testdir/Make_all.mak,
+ src/testdir/test_vim9_disassemble.vim, src/vim9compile.c,
+ src/userfunc.c, src/proto/userfunc.pro, src/vim.h
+
+Patch 8.2.0224
+Problem: compiling :elseif not tested yet.
+Solution: Add test for :elseif. Fix generating jumps.
+Files: src/testdir/test_vim9_script.vim, src/vim9compile.c,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0225
+Problem: compiling lambda not tested yet.
+Solution: Add test for lambda and funcref. Drop unused instruction arg.
+Files: src/testdir/test_vim9_disassemble.vim, src/vim9.h,
+ src/vim9execute.c
+
+Patch 8.2.0226
+Problem: Compiling for loop not tested.
+Solution: Add a test. Make variable initialization work for more types.
+Files: src/testdir/test_vim9_disassemble.vim, src/vim9compile.c
+
+Patch 8.2.0227
+Problem: Compiling a few instructions not tested.
+Solution: Add more test cases.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0228
+Problem: Configure does not recognize gcc version on BSD.
+Solution: Do not use "\+" in the pattern matching the version number. (Ozaki
+ Kiichi, closes #5590)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0229
+Problem: Compare instructions not tested.
+Solution: Add test cases. Fix disassemble with line continuation.
+Files: src/testdir/test_vim9_disassemble.vim, src/vim9execute.c,
+ src/vim9compile.c
+
+Patch 8.2.0230
+Problem: Terminal popup test is flaky.
+Solution: Increase wait time a bit.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0231
+Problem: Silent system command may clear the screen.
+Solution: Do not clear the screen in t_te.
+Files: src/term.c
+
+Patch 8.2.0232
+Problem: The :compiler command causes a crash. (Daniel Steinberg)
+Solution: Do not use the script index if it isn't set.
+Files: src/ex_docmd.c, src/testdir/test_compiler.vim
+
+Patch 8.2.0233
+Problem: Crash when using garbagecollect() in between rand().
+Solution: Redesign the rand() and srand() implementation. (Yasuhiro
+ Matsumoto, closes #5587, closes #5588)
+Files: src/evalfunc.c, src/testdir/test_random.vim,
+ runtime/doc/testing.txt, runtime/doc/eval.txt
+
+Patch 8.2.0234
+Problem: Message test fails on SunOS.
+Solution: Adjust expectation for printf "%p". (Ozaki Kiichi, closes #5595)
+Files: src/message_test.c
+
+Patch 8.2.0235
+Problem: Draw error when an empty group is removed from 'statusline'.
+Solution: Do not use highlighting from a removed group.
+Files: src/buffer.c, src/testdir/test_statusline.vim,
+ src/testdir/dumps/Test_statusline_1.dump
+
+Patch 8.2.0236
+Problem: MS-Windows uninstall doesn't delete vimtutor.bat.
+Solution: Change directory before deletion. (Ken Takata, closes #5603)
+Files: src/uninstall.c
+
+Patch 8.2.0237
+Problem: Crash when setting 'wincolor' on finished terminal window.
+ (Bakudankun)
+Solution: Check that the vterm is not NULL. (Yasuhiro Matsumoto, closes
+ #5607, closes #5610)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.0238
+Problem: MS-Windows: job_stop() results in exit value zero.
+Solution: Call TerminateJobObject() with -1 instead of 0. (Yasuhiro
+ Matsumoto, closes #5150, closes #5614)
+Files: src/os_win32.c, src/testdir/test_channel.vim
+
+Patch 8.2.0239
+Problem: MS-Windows: 'env' job option does not override existing
+ environment variables. (Tim Pope)
+Solution: Set the environment variables later. (Yasuhiro Matsumoto,
+ closes #5485, closes #5608)
+Files: src/os_win32.c, src/testdir/test_channel.vim
+
+Patch 8.2.0240
+Problem: Using memory after it was freed. (Dominique Pellé)
+Solution: Do not mix conversion buffer with other buffer.
+Files: src/viminfo.c, src/vim.h
+
+Patch 8.2.0241
+Problem: Crash when setting 'buftype' to "quickfix".
+Solution: Check that error list is not NULL. (closes #5613)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.0242
+Problem: Preview popup window test fails with long directory name. (Jakub
+ Kądziołka)
+Solution: Use "silent cd". (closes #5615)
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.0243
+Problem: Insufficient code coverage for ex_docmd.c functions.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5618)
+Files: src/testdir/Make_all.mak, src/testdir/test_arglist.vim,
+ src/testdir/test_buffer.vim, src/testdir/test_cd.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim,
+ src/testdir/test_excmd.vim, src/testdir/test_mapping.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_search.vim,
+ src/testdir/test_sort.vim, src/testdir/test_source.vim,
+ src/testdir/test_substitute.vim, src/testdir/test_undo.vim,
+ src/testdir/test_vimscript.vim, src/testdir/test_window_cmd.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.0244
+Problem: Compiler warning in Lua interface.
+Solution: Add type cast. (Ken Takata, closes #5621)
+Files: src/if_lua.c
+
+Patch 8.2.0245
+Problem: MSVC: error message if the auto directory already exists.
+Solution: Add "if not exists". (Ken Takata, closes #5620)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0246
+Problem: MSVC: deprecation warnings with Ruby.
+Solution: Move _CRT_SECURE_NO_DEPRECATE to build file. (Ken Takata,
+ closes #5622)
+Files: src/Make_mvc.mak, src/if_ruby.c, src/os_win32.h, src/vim.h,
+ src/vimio.h
+
+Patch 8.2.0247
+Problem: Misleading comment in NSIS installer script.
+Solution: Negate the meaning of the comment. (Ken Takata, closes #5627)
+Files: nsis/gvim.nsi
+
+Patch 8.2.0248
+Problem: MS-Windows: dealing with deprecation is too complicated.
+Solution: Use io.h directly. Move _CRT_SECURE_NO_DEPRECATE to the build
+ file. Suppress C4091 warning by setting "_WIN32_WINNT". (Ken
+ Takata, closes #5626)
+Files: src/Make_mvc.mak, src/dosinst.h, src/vim.h, src/vimio.h,
+ src/winclip.c, Filelist
+
+Patch 8.2.0249
+Problem: MS-Windows: various warnings.
+Solution: Set the charset to utf-8. Add _WIN32_WINNT and _USING_V110_SDK71_.
+ (Ken Takata, closes #5625)
+Files: src/GvimExt/Makefile, src/Make_mvc.mak
+
+Patch 8.2.0250
+Problem: test_clear_search_pat() is unused.
+Solution: Remove the function. (Yegappan Lakshmanan, closes #5624)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/regexp.pro,
+ src/proto/search.pro, src/proto/testing.pro, src/regexp.c,
+ src/search.c, src/testdir/test_writefile.vim, src/testing.c
+
+Patch 8.2.0251
+Problem: A couple of function return types can be more specific.
+Solution: Use a better return type. (Ken Takata, closes #5629)
+Files: src/evalfunc.c, src/globals.h
+
+Patch 8.2.0252
+Problem: Windows compiler warns for using size_t.
+Solution: Change to int. (Mike Williams)
+Files: src/vim9compile.c
+
+Patch 8.2.0253
+Problem: Crash when using :disassemble without argument. (Dhiraj Mishra)
+Solution: Check for missing argument. (Dominique Pellé, closes #5635,
+ closes #5637)
+Files: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim,
+ src/ex_cmds.h
+
+Patch 8.2.0254
+Problem: Compiler warning for checking size_t to be negative.
+Solution: Only check for zero. (Zoltan Arpadffy)
+Files: src/vim9compile.c
+
+Patch 8.2.0255
+Problem: VMS: missing files in build.
+Solution: Add the files. (Zoltan Arpadffy)
+Files: src/Make_vms.mms
+
+Patch 8.2.0256
+Problem: Time and timer related code is spread out.
+Solution: Move time and timer related code to a new file. (Yegappan
+ Lakshmanan, closes #5604)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_cmds2.c, src/main.c,
+ src/memline.c, src/misc1.c, src/misc2.c, src/proto.h,
+ src/proto/ex_cmds.pro, src/proto/ex_cmds2.pro, src/proto/main.pro,
+ src/proto/memline.pro, src/proto/misc1.pro, src/proto/misc2.pro,
+ src/proto/time.pro, src/time.c
+
+Patch 8.2.0257
+Problem: Cannot recognize a terminal in a popup window.
+Solution: Add the win_gettype() function.
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/evalwindow.c,
+ src/proto/evalwindow.pro, src/testdir/test_cmdline.vim,
+ src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_popup_1.dump
+
+Patch 8.2.0258
+Problem: ModifyOtherKeys cannot be temporarily disabled.
+Solution: Add echoraw() with an example for modifyOtherKeys.
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_functions.vim,
+ src/testdir/dumps/Test_functions_echoraw.dump
+
+Patch 8.2.0259
+Problem: Terminal in popup test sometimes fails.
+Solution: Clear the command line.
+Files: src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_popup_1.dump
+
+Patch 8.2.0260
+Problem: Several lines of code are duplicated.
+Solution: Move duplicated code to a function. (Yegappan Lakshmanan,
+ closes #5330)
+Files: src/option.c, src/os_unix.c, src/os_win32.c, src/proto/term.pro,
+ src/quickfix.c, src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c,
+ src/term.c
+
+Patch 8.2.0261
+Problem: Some code not covered by tests.
+Solution: Add test cases. (Yegappan Lakshmanan, closes #5645)
+Files: src/testdir/test_buffer.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_exists.vim, src/testdir/test_filechanged.vim,
+ src/testdir/test_fileformat.vim, src/testdir/test_mapping.vim,
+ src/testdir/test_marks.vim, src/testdir/test_normal.vim,
+ src/testdir/test_plus_arg_edit.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_tabpage.vim, src/testdir/test_visual.vim,
+ src/testdir/test_window_cmd.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.0262 (after 8.2.0261)
+Problem: Fileformat test fails on MS-Windows.
+Solution: Set fileformat of buffer.
+Files: src/testdir/test_fileformat.vim
+
+Patch 8.2.0263
+Problem: A few new Vim9 messages are not localized.
+Solution: Add the gettext wrapper. (Dominique Pellé, closes #5647)
+Files: src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.0264 (after 8.2.0262)
+Problem: Fileformat test still fails on MS-Windows.
+Solution: Set fileformat of buffer in the right place.
+Files: src/testdir/test_fileformat.vim
+
+Patch 8.2.0265
+Problem: "eval" after "if 0" doesn't check for following command.
+Solution: Add "eval" to list of commands that check for a following command.
+ (closes #5640)
+Files: src/ex_docmd.c, src/testdir/test_expr.vim
+
+Patch 8.2.0266
+Problem: Terminal in popup test sometimes fails on Mac.
+Solution: Add a short delay.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0267
+Problem: No check for a following command when calling a function fails.
+Solution: Also check for a following command when inside a try block.
+ (closes #5642)
+Files: src/userfunc.c, src/testdir/test_user_func.vim
+
+Patch 8.2.0268 (after 8.2.0267)
+Problem: Trycatch test fails.
+Solution: When calling function fails only check for following command, do
+ not give another error.
+Files: src/userfunc.c
+
+Patch 8.2.0269
+Problem: Vim9: operator after list index does not work. (Yasuhiro
+ Matsumoto)
+Solution: After indexing a list change the type to the list member type.
+ (closes #5651)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0270
+Problem: Some code not covered by tests.
+Solution: Add test cases. (Yegappan Lakshmanan, closes #5649)
+Files: src/testdir/test_autocmd.vim, src/testdir/test_buffer.vim,
+ src/testdir/test_edit.vim, src/testdir/test_ex_mode.vim,
+ src/testdir/test_excmd.vim, src/testdir/test_expand.vim,
+ src/testdir/test_filetype.vim, src/testdir/test_findfile.vim,
+ src/testdir/test_join.vim, src/testdir/test_move.vim,
+ src/testdir/test_normal.vim, src/testdir/test_registers.vim,
+ src/testdir/test_source.vim, src/testdir/test_tabpage.vim,
+ src/testdir/test_tagjump.vim, src/testdir/test_vimscript.vim,
+ src/testdir/test_visual.vim, src/testdir/test_window_cmd.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.0271
+Problem: The "num64" feature is available everywhere and building without
+ it causes problems.
+Solution: Graduate the "num64" feature. (James McCoy, closes #5650)
+Files: src/evalfunc.c, src/feature.h, src/message.c, src/structs.h,
+ src/testdir/test_expr.vim, src/testdir/test_largefile.vim,
+ src/testdir/test_sort.vim, src/testdir/test_vimscript.vim,
+ src/version.c
+
+Patch 8.2.0272
+Problem: ":helptags ALL" gives error for directories without write
+ permission. (Matěj Cepl)
+Solution: Ignore errors for ":helptags ALL". (Ken Takata, closes #5026,
+ closes #5652)
+Files: src/ex_cmds.c, src/testdir/test_help.vim
+
+Patch 8.2.0273
+Problem: MS-Windows uninstall may delete wrong batch file.
+Solution: Add specific marker in the generated batch file. (Ken Takata,
+ closes #5654)
+Files: src/Make_mvc.mak, src/dosinst.c, src/dosinst.h, src/uninstall.c
+
+Patch 8.2.0274
+Problem: Hang with combination of feedkeys(), Ex mode and :global.
+ (Yegappan Lakshmanan)
+Solution: Add the pending_exmode_active flag.
+Files: src/ex_docmd.c, src/globals.h, src/getchar.c,
+ src/testdir/test_ex_mode.vim
+
+Patch 8.2.0275
+Problem: Some Ex code not covered by tests.
+Solution: Add test cases. (Yegappan Lakshmanan, closes #5659)
+Files: src/testdir/test_arglist.vim, src/testdir/test_autocmd.vim,
+ src/testdir/test_excmd.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_search.vim, src/testdir/test_swap.vim,
+ src/testdir/test_window_cmd.vim
+
+Patch 8.2.0276
+Problem: Vim9: not allowing space before ")" in function call is too
+ restrictive. (Ben Jackson)
+Solution: Skip space before the ")". Adjust other space checks.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0277
+Problem: Vim9: not all instructions covered by tests.
+Solution: Add more test cases.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0278
+Problem: Channel test is flaky on Mac.
+Solution: Reset variable before sending message.
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.0279
+Problem: Vim9: no test for deleted :def function.
+Solution: Add a test. Clear uf_cleared flag when redefining a function.
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0280
+Problem: Vim9: throw in :def function not caught higher up.
+Solution: Set "need_rethrow".
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0281
+Problem: Two placed signs in the same line are not combined. E.g. in the
+ terminal debugger a breakpoint and the PC cannot be both be
+ displayed.
+Solution: Combine the sign column and line highlight attributes.
+Files: src/sign.c, src/testdir/test_signs.vim,
+ src/testdir/dumps/Test_sign_cursor_3.dump,
+ src/testdir/dumps/Test_sign_cursor_4.dump
+
+Patch 8.2.0282
+Problem: Vim9: setting number option not tested.
+Solution: Add more tests. Fix assigning to global variable.
+Files: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim,
+ src/vim9execute.c
+
+Patch 8.2.0283
+Problem: Vim9: failing to load script var not tested.
+Solution: Add more tests. Fix using s: in old script.
+Files: src/testdir/test_vim9_expr.vim, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0284
+Problem: Vim9: assignment test fails.
+Solution: Avoid duplicating "s:".
+Files: src/vim9compile.c
+
+Patch 8.2.0285
+Problem: Unused error message. Cannot create s:var.
+Solution: Remove the error message. Make assignment to s:var work.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0286
+Problem: Cannot use popup_close() for a terminal popup.
+Solution: Allow using popup_close(). (closes #5666)
+Files: src/popupwin.c, runtime/doc/popup.txt,
+ src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_popup_5.dump,
+ src/testdir/dumps/Test_terminal_popup_6.dump
+
+Patch 8.2.0287
+Problem: Vim9: return in try block not tested; catch with pattern not
+ tested.
+Solution: Add tests. Make it work.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0288
+Problem: Vim9: some float and blob operators not tested.
+Solution: Add float and blob tests. Fix addition.
+Files: src/testdir/test_vim9_expr.vim, src/vim9compile.c
+
+Patch 8.2.0289
+Problem: Vim9: :echo did not clear the rest of the line.
+Solution: Call msg_clr_eos(). (Ken Takata, closes #5668)
+Files: src/vim9execute.c
+
+Patch 8.2.0290
+Problem: Running individual test differs from all tests.
+Solution: Pass on environment variables. (Yee Cheng Chin, closes #5672)
+Files: src/testdir/Makefile, src/testdir/README.txt
+
+Patch 8.2.0291
+Problem: Vim9: assigning [] to list<string> doesn't work.
+Solution: Use void for empty list and dict. (Ken Takata, closes #5669)
+Files: src/vim9compile.c, src/globals.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0292
+Problem: Vim9: CHECKNR and CHECKTYPE instructions not tested.
+Solution: Add tests.
+Files: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0293
+Problem: Various Ex commands not sufficiently tested.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #5673)
+Files: src/testdir/test_arglist.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_ex_mode.vim, src/testdir/test_excmd.vim,
+ src/testdir/test_expand.vim, src/testdir/test_filetype.vim,
+ src/testdir/test_filter_cmd.vim, src/testdir/test_global.vim,
+ src/testdir/test_normal.vim, src/testdir/test_plus_arg_edit.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_trycatch.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.0294
+Problem: Cannot use Ex command that is also a function name.
+Solution: Recognize an Ex command by a colon prefix.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim,
+ runtime/doc/vim9.txt
+
+Patch 8.2.0295
+Problem: Highlighting for :s wrong when using different separator.
+Solution: Use separate argument for search direction and separator. (Rob
+ Pilling, closes #5665)
+Files: src/ex_docmd.c, src/ex_getln.c, src/gui.c, src/normal.c,
+ src/proto/search.pro, src/quickfix.c, src/search.c, src/spell.c,
+ src/tag.c, src/testdir/dumps/Test_incsearch_substitute_15.dump,
+ src/testdir/test_search.vim
+
+Patch 8.2.0296
+Problem: Mixing up "long long" and __int64 may cause problems. (John
+ Marriott)
+Solution: Pass varnumber_T to vim_snprintf(). Add v:numbersize.
+Files: src/message.c, src/eval.c, src/fileio.c, src/json.c, src/ops.c,
+ src/vim.h, src/structs.h, src/evalvars.c, runtime/doc/eval.txt,
+ runtime/doc/various.txt, src/testdir/test_eval_stuff.vim
+
+Patch 8.2.0297
+Problem: Compiler warnings for the Ruby interface.
+Solution: Undefine a few macros, fix initialization. (Ozaki Kiichi,
+ closes #5677)
+Files: src/if_ruby.c
+
+Patch 8.2.0298
+Problem: Vim9 script: cannot start command with a string constant.
+Solution: Recognize expression starting with '('.
+Files: src/ex_docmd.c, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim, runtime/doc/vim9.txt
+
+Patch 8.2.0299
+Problem: Vim9: ISN_STORE with argument not tested. Some cases in tv2bool()
+ not tested.
+Solution: Add tests. Add test_unknown() and test_void().
+Files: src/testing.c, src/proto/testing.pro, src/evalfunc.c,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, runtime/doc/eval.txt,
+ runtime/doc/testing.txt
+
+Patch 8.2.0300
+Problem: Vim9: expression test fails without channel support.
+Solution: Add has('channel') check.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0301
+Problem: Insufficient testing for exception handling and the "attention"
+ prompt.
+Solution: Add test cases. (Yegappan Lakshmanan, closes #5681)
+Files: src/testdir/test_swap.vim, src/testdir/test_trycatch.vim
+
+Patch 8.2.0302
+Problem: Setting 'term' may cause error in TermChanged autocommand.
+Solution: Use aucmd_prepbuf() to switch to the buffer where the autocommand
+ is to be executed. (closes #5682)
+Files: src/term.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.0303
+Problem: TermChanged test fails in the GUI.
+Solution: Skip the test when running the GUI.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.0304
+Problem: Terminal test if failing on some systems.
+Solution: Wait for the job to finish. (James McCoy)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0305
+Problem: Relativenumber test fails on some systems. (James McCoy)
+Solution: Clear the command line.
+Files: src/testdir/test_number.vim,
+ src/testdir/dumps/Test_relnr_colors_2.dump,
+ src/testdir/dumps/Test_relnr_colors_3.dump
+
+Patch 8.2.0306
+Problem: Vim9: :substitute(pat(repl does not work in Vim9 script.
+Solution: Remember starting with a colon. (closes #5676)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0307
+Problem: Python 3 vim.eval not well tested.
+Solution: Add a test. (Dominique Pellé, closes #5680)
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.0308
+Problem: 'showbreak' does not work for a very long line. (John Little)
+Solution: Check whether 'briopt' contains "sbr". (Ken Takata, closes #5523,
+ closes #5684)
+Files: src/drawline.c, src/testdir/test_breakindent.vim
+
+Patch 8.2.0309
+Problem: Window-local values have confusing name.
+Solution: Rename w_p_bri* to w_briopt_*.
+Files: src/structs.h, src/indent.c, src/drawline.c
+
+Patch 8.2.0310
+Problem: Autocmd test fails on a slow system.
+Solution: Adjust the expectations. (James McCoy, closes #5685)
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.0311
+Problem: Vim9: insufficient script tests.
+Solution: Add tests. Free imports when re-using a script.
+Files: src/testdir/test_vim9_script.vim, src/scriptfile.c
+
+Patch 8.2.0312
+Problem: Vim9: insufficient script tests.
+Solution: Add more tests. Make "import * as Name" work.
+Files: src/testdir/test_vim9_script.vim, src/vim9script.c,
+ src/proto/vim9script.pro, src/vim9compile.c
+
+Patch 8.2.0313
+Problem: Vim9: insufficient script tests.
+Solution: Add tests. Make import of alphanumeric name work.
+Files: src/testdir/test_vim9_script.vim, src/vim9script.c
+
+Patch 8.2.0314
+Problem: Short name not set for terminal buffer.
+Solution: Set the short name. (closes #5687)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.0315
+Problem: Build failure on HP-UX system.
+Solution: Use LONG_LONG_MIN instead of LLONG_MIN. Add type casts for switch
+ statement. (John Marriott)
+Files: src/structs.h, src/json.c
+
+Patch 8.2.0316
+Problem: ex_getln.c code has insufficient test coverage.
+Solution: Add more tests. Fix a problem. (Yegappan Lakshmanan, closes #5693)
+Files: src/cmdhist.c, src/testdir/test_cmdline.vim,
+ src/testdir/test_functions.vim, src/testdir/test_history.vim,
+ src/testdir/test_menu.vim
+
+Patch 8.2.0317
+Problem: MSVC: _CRT_SECURE_NO_DEPRECATE not defined on DEBUG build.
+Solution: Move where CFLAGS is updated. (Ken Takata, closes #5692)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0318
+Problem: Vim9: types not sufficiently tested.
+Solution: Add tests with more types.
+Files: src/globals.h, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0319
+Problem: File missing in distribution, comments outdated.
+Solution: Correct path of README file. Update comments.
+Files: Filelist, src/evalvars.c, src/register.c, src/if_python3.c
+
+Patch 8.2.0320
+Problem: No Haiku support.
+Solution: Add support for Haiku. (Emir Sarı, closes #5605)
+Files: Filelist, runtime/doc/Makefile, runtime/doc/eval.txt,
+ runtime/doc/gui.txt, runtime/doc/help.txt,
+ runtime/doc/options.txt, runtime/doc/os_haiku.txt,
+ runtime/doc/starting.txt, runtime/doc/tags,
+ runtime/gvimrc_example.vim, runtime/vimrc_example.vim,
+ src/INSTALL, src/Makefile, src/auto/configure, src/configure.ac,
+ src/evalfunc.c, src/feature.h, src/fileio.c, src/globals.h,
+ src/gui.c, src/gui.h, src/gui_haiku.cc, src/gui_haiku.h,
+ src/mbyte.c, src/menu.c, src/misc1.c, src/mouse.c, src/option.h,
+ src/os_haiku.h, src/os_haiku.rdef, src/os_unix.c, src/os_unix.h,
+ src/osdef1.h.in, src/proto.h, src/proto/gui_haiku.pro, src/pty.c,
+ src/screen.c, src/structs.h, src/term.c, src/version.c, src/vim.h
+
+Patch 8.2.0321
+Problem: Vim9: ":execute" does not work yet.
+Solution: Add ISN_EXECUTE. (closes #5699) Also make :echo work with more
+ than one argument.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0322
+Problem: Vim9: error checks not tested.
+Solution: Add more test cases. Avoid error for function loaded later.
+Files: src/vim9compile.c, src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0323
+Problem: Vim9: calling a function that is defined later is slow.
+Solution: Once the function is found update the instruction so it can be
+ called directly.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0324
+Problem: Text property not updated correctly when inserting/deleting.
+Solution: Use the right column when deleting. Make zero-width text
+ properties respect start_incl and end_incl. (Axel Forsman,
+ closes #5696, closes #5679)
+Files: src/change.c, src/textprop.c, src/testdir/test_listener.vim,
+ src/testdir/test_textprop.vim
+
+Patch 8.2.0325
+Problem: Ex_getln.c code not covered by tests.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #5702)
+Files: src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim,
+ src/testdir/test_functions.vim, src/testdir/test_history.vim,
+ src/testdir/test_options.vim
+
+Patch 8.2.0326
+Problem: Compiler warning for using uninitialized variable. (Yegappan
+ Lakshmanan)
+Solution: Do not jump to failed but return.
+Files: src/vim9execute.c
+
+Patch 8.2.0327
+Problem: Crash when opening and closing two popup terminal windows.
+Solution: Check that prevwin is valid. (closes #5707)
+Files: src/popupwin.c, src/testdir/test_terminal.vim
+
+Patch 8.2.0328
+Problem: No redraw when leaving terminal-normal mode in a terminal popup
+ window.
+Solution: Redraw the popup window. (closes #5708)
+Files: src/macros.h, src/vim.h, src/terminal.c, src/drawscreen.c,
+ src/move.c, src/popupwin.c, src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_popup_7.dump,
+ src/testdir/dumps/Test_terminal_popup_8.dump
+
+Patch 8.2.0329
+Problem: Popup filter converts 0x80 bytes.
+Solution: Keep 0x80 bytes as-is. (Ozaki Kiichi, closes #5706)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.0330
+Problem: Build error with popup window but without terminal.
+Solution: Add #ifdef.
+Files: src/popupwin.c
+
+Patch 8.2.0331
+Problem: Internal error when using test_void() and test_unknown().
+ (Dominique Pellé)
+Solution: Give a normal error.
+Files: src/evalfunc.c, src/testdir/test_functions.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.0332
+Problem: Some code in ex_getln.c not covered by tests.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #5710)
+Files: src/testdir/test_arabic.vim, src/testdir/test_cmdline.vim
+
+Patch 8.2.0333
+Problem: Terminal in popup test is flaky.
+Solution: Make sure redraw is done before opening the popup.
+Files: src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_popup_1.dump
+
+Patch 8.2.0334
+Problem: Abort called when using test_void(). (Dominique Pellé)
+Solution: Only give an error, don't abort.
+Files: src/message.c, src/proto/message.pro, src/evalfunc.c,
+ src/eval.c, src/json.c, src/testdir/test_functions.vim
+
+Patch 8.2.0335
+Problem: No completion for :disassemble.
+Solution: Make completion work. Also complete script-local functions if the
+ name starts with "s:".
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim,
+ runtime/doc/vim9.txt
+
+Patch 8.2.0336
+Problem: Vim9: insufficient test coverage for compiling.
+Solution: Add more tests.
+Files: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim,
+ src/vim9.h, src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.0337
+Problem: Build fails on a few systems.
+Solution: Use vim_snprintf() instead of snprintf().
+Files: src/cmdexpand.c
+
+Patch 8.2.0338
+Problem: Build failure without the channel feature.
+Solution: Add #ifdef
+Files: src/vim9compile.c
+
+Patch 8.2.0339
+Problem: Vim9: function return type may depend on arguments.
+Solution: Instead of a fixed return type use a function to figure out the
+ return type.
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c,
+ src/evalbuffer.c, src/proto/evalbuffer.pro,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0340
+Problem: Vim9: function and partial types not tested.
+Solution: Support more for partial, add tests.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0341
+Problem: Using ":for" in Vim9 script gives an error.
+Solution: Pass the LET_NO_COMMAND flag. (closes #5715)
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0342
+Problem: Some code in ex_getln.c not covered by tests.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5717)
+Files: src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim,
+ src/testdir/test_history.vim, src/testdir/test_iminsert.vim
+
+Patch 8.2.0343
+Problem: Vim9: using wrong instruction, limited test coverage.
+Solution: Use ISN_PUSHJOB. Add a few more tests.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0344
+Problem: ":def" not skipped properly.
+Solution: Add CMD_def to list of commands the require evaluation even when
+ not being executed.
+Files: src/ex_docmd.c
+
+Patch 8.2.0345
+Problem: Compiler warning when building without the float feature.
+Solution: Add #ifdef. (John Marriott)
+Files: src/evalfunc.c
+
+Patch 8.2.0346
+Problem: Vim9: finding common list type not tested.
+Solution: Add more tests. Fix listing function. Fix overwriting type.
+Files: src/vim9compile.c, src/userfunc.c,
+ src/testdir/test_vim9_script.vim, src/testdir/runtest.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0347
+Problem: Various code not covered by tests.
+Solution: Add more test coverage. (Yegappan Lakshmanan, closes #5720)
+Files: src/testdir/gen_opt_test.vim, src/testdir/test86.in,
+ src/testdir/test_cmdline.vim, src/testdir/test_digraph.vim,
+ src/testdir/test_ex_mode.vim, src/testdir/test_history.vim
+
+Patch 8.2.0348
+Problem: Vim9: not all code tested.
+Solution: Add a few more tests. fix using "b:" in literal dictionary.
+Files: src/testdir/test_vim9_expr.vim, src/vim9compile.c,
+ src/proto/vim9compile.pro, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0349
+Problem: Vim9: constant expression not well tested.
+Solution: Add tests for "if" with constant expression.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0350
+Problem: Vim9: expression tests don't use recognized constants.
+Solution: Recognize "true" and "false" as constants. Make skipping work for
+ assignment and expression evaluation.
+Files: src/vim9compile.c
+
+Patch 8.2.0351
+Problem: Terminal in popup test is still a bit flaky.
+Solution: Clear and redraw before opening the popup.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0352
+Problem: FreeBSD: test for sourcing utf-8 is skipped.
+Solution: Run the matchadd_conceal test separately to avoid that setting
+ 'term' to "ansi" causes problems for other tests. (Ozaki Kiichi,
+ closes #5721)
+Files: src/testdir/Make_all.mak, src/testdir/test_alot_utf8.vim,
+ src/testdir/test_source_utf8.vim
+
+Patch 8.2.0353
+Problem: Vim9: while loop not tested.
+Solution: Add test with "while", "break" and "continue"
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0354
+Problem: Python 3.9 does not define _Py_DEC_REFTOTAL. (Zdenek Dohnal)
+Solution: Remove it, it was only for debugging.
+Files: src/if_python3.c
+
+Patch 8.2.0355
+Problem: Vim9: str_val is confusing, it's a number
+Solution: Rename to stnr_val.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.0356
+Problem: MS-Windows: feedkeys() with VIMDLL cannot handle CSI correctly.
+Solution: Modify mch_inchar() to encode CSI bytes. (Ozaki Kiichi, Ken
+ Takata, closes #5726)
+Files: src/getchar.c, src/os_win32.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.0357
+Problem: Cannot delete a text property matching both id and type. (Axel
+ Forsman)
+Solution: Add the "both" argument.
+Files: src/textprop.c, runtime/doc/textprop.txt,
+ src/testdir/test_textprop.vim
+
+Patch 8.2.0358
+Problem: Insufficient testing for indent.c.
+Solution: Add indent tests. (Yegappan Lakshmanan, closes #5736)
+Files: src/testdir/Make_all.mak, src/testdir/test_ex_mode.vim,
+ src/testdir/test_expand_func.vim, src/testdir/test_indent.vim,
+ src/testdir/test_lispwords.vim, src/testdir/test_smartindent.vim,
+ src/testdir/test_vartabs.vim
+
+Patch 8.2.0359
+Problem: popup_atcursor() may hang. (Yasuhiro Matsumoto)
+Solution: Take the decoration into account. (closes #5728)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.0360
+Problem: Yaml files are only recognized by the file extension.
+Solution: Check for a line starting with "%YAML". (Jason Franklin)
+Files: runtime/scripts.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0361
+Problem: Internal error when using "0" for a callback.
+Solution: Give a normal error. (closes #5743)
+Files: src/evalvars.c, src/testdir/test_timers.vim
+
+Patch 8.2.0362
+Problem: MS-Windows: channel test fails if grep is not available.
+Solution: Use another command. (Ken Takata, closes #5739)
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.0363
+Problem: Some Normal mode commands not tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5746)
+Files: src/testdir/test_cindent.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_edit.vim, src/testdir/test_indent.vim,
+ src/testdir/test_normal.vim, src/testdir/test_prompt_buffer.vim,
+ src/testdir/test_virtualedit.vim, src/testdir/test_visual.vim
+
+Patch 8.2.0364
+Problem: Printf test failing on Haiku.
+Solution: Make a difference between int and short. (Dominique Pellé,
+ closes #5749)
+Files: src/message.c
+
+Patch 8.2.0365
+Problem: Tag kind can't be a multibyte character. (Marcin Szamotulski)
+Solution: Recognize multibyte character. (closes #5724)
+Files: src/tag.c, src/testdir/test_taglist.vim
+
+Patch 8.2.0366
+Problem: Hardcopy command not tested enough.
+Solution: Add tests for printing. (Dominique Pellé, closes #5748)
+Files: src/testdir/test_hardcopy.vim
+
+Patch 8.2.0367
+Problem: Can use :pedit in a popup window.
+Solution: Disallow it.
+Files: src/ex_docmd.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.0368
+Problem: Vim9: import that redefines local variable does not fail.
+Solution: Check for already defined symbols.
+Files: src/vim9script.c, src/proto/vim9script.pro, src/vim9compile.c,
+ src/proto/vim9compile.pro, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0369
+Problem: Various Normal mode commands not fully tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5751)
+Files: src/testdir/test_arglist.vim, src/testdir/test_changelist.vim,
+ src/testdir/test_charsearch.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_edit.vim, src/testdir/test_ex_mode.vim,
+ src/testdir/test_excmd.vim, src/testdir/test_gf.vim,
+ src/testdir/test_iminsert.vim, src/testdir/test_increment.vim,
+ src/testdir/test_marks.vim, src/testdir/test_normal.vim,
+ src/testdir/test_prompt_buffer.vim, src/testdir/test_put.vim,
+ src/testdir/test_registers.vim, src/testdir/test_tagjump.vim,
+ src/testdir/test_visual.vim
+
+Patch 8.2.0370
+Problem: The typebuf_was_filled flag is sometimes not reset, which may
+ cause a hang.
+Solution: Make sure typebuf_was_filled is reset when the typeahead buffer is
+ empty.
+Files: src/edit.c, src/getchar.c,
+
+Patch 8.2.0371
+Problem: Crash with combination of terminal popup and autocmd.
+Solution: Disallow closing a popup that is the current window. Add a check
+ that the current buffer is valid. (closes #5754)
+Files: src/macros.h, src/buffer.c, src/popupwin.c, src/terminal.c,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.0372
+Problem: Prop_find() may not find text property at start of the line.
+Solution: Adjust the loop to find properties. (Axel Forsman, closes #5761,
+ closes #5663)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.0373
+Problem: Type of term_sendkeys() is unknown.
+Solution: Just return zero. (closes #5762)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.0374
+Problem: Using wrong printf directive for jump location.
+Solution: Change "%lld" to "%d". (James McCoy, closes #5773)
+Files: src/vim9execute.c
+
+Patch 8.2.0375
+Problem: Coverity warning for not using return value.
+Solution: Move error message to separate function.
+Files: src/popupwin.c
+
+Patch 8.2.0376
+Problem: Nasty callback test fails on some systems.
+Solution: Increase the sleep time.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0377
+Problem: No CI test for a big-endian system.
+Solution: Test with s390x. (James McCoy, closes #5772)
+Files: .travis.yml
+
+Patch 8.2.0378
+Problem: prop_find() does not find all props.
+Solution: Check being in the start line. (Axel Forsman, closes #5776)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.0379
+Problem: Gcc warns for ambiguous else.
+Solution: Add braces. (Dominique Pellé, closes #5778)
+Files: src/textprop.c
+
+Patch 8.2.0380
+Problem: Tiny popup when creating a terminal popup without minwidth.
+Solution: Use a default minimum size of 5 lines of 20 characters.
+Files: src/popupwin.c, src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_popup_m1.dump
+
+Patch 8.2.0381
+Problem: Using freed memory with :lvimgrep and autocommand. (extracted from
+ POC by Dominique Pellé)
+Solution: Avoid deleting a dummy buffer used in a window. (closes #5777)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.0382
+Problem: Some tests fail when run under valgrind.
+Solution: Increase timeouts.
+Files: src/testdir/test_autocmd.vim, src/testdir/test_debugger.vim,
+ src/testdir/test_channel.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_popup_1.dump,
+ src/testdir/dumps/Test_terminal_popup_2.dump,
+ src/testdir/dumps/Test_terminal_popup_3.dump,
+ src/testdir/dumps/Test_terminal_popup_5.dump,
+ src/testdir/dumps/Test_terminal_popup_6.dump,
+ src/testdir/dumps/Test_terminal_popup_7.dump,
+ src/testdir/dumps/Test_terminal_popup_8.dump,
+ src/testdir/dumps/Test_terminal_popup_m1.dump
+
+Patch 8.2.0383
+Problem: Wrong feature check causes test not to be run.
+Solution: Use CheckFunction instead of CheckFeature. (Ozaki Kiichi,
+ closes #5781)
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.0384
+Problem: Travis CI has warnings.
+Solution: Avoid warnings, clean up the config. (Ozaki Kiichi, closes #5779)
+Files: .travis.yml
+
+Patch 8.2.0385
+Problem: Menu functionality insufficiently tested.
+Solution: Add tests. Add menu_info(). (Yegappan Lakshmanan, closes #5760)
+Files: runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/usr_41.txt,
+ src/evalfunc.c, src/menu.c, src/proto/menu.pro,
+ src/testdir/test_menu.vim, src/testdir/test_popup.vim,
+ src/testdir/test_termcodes.vim
+
+Patch 8.2.0386 (after 8.2.0385)
+Problem: Part from unfinished patch got included.
+Solution: Undo that part.
+Files: src/evalfunc.c
+
+Patch 8.2.0387
+Problem: Error for possible NULL argument to qsort().
+Solution: Don't call qsort() when there is nothing to sort. (Dominique
+ Pellé, closes #5780)
+Files: src/spellsuggest.c
+
+Patch 8.2.0388
+Problem: Printmbcharset option not tested.
+Solution: Add a test. Enable PostScript for AppVeyor build. (Dominique
+ Pellé, closes #5783)
+Files: appveyor.yml, src/testdir/test_hardcopy.vim
+
+Patch 8.2.0389
+Problem: Delayed redraw when shifting text from Insert mode.
+Solution: Use msg_attr_keep() instead of msg(). (closes #5782)
+Files: src/ops.c
+
+Patch 8.2.0390
+Problem: Terminal postponed scrollback test is flaky.
+Solution: Add delay in between sending keys. Rename dump files.
+Files: src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_01.dump,
+ src/testdir/dumps/Test_terminal_02.dump,
+ src/testdir/dumps/Test_terminal_03.dump,
+ src/testdir/dumps/Test_terminal_scrollback_1.dump,
+ src/testdir/dumps/Test_terminal_scrollback_2.dump,
+ src/testdir/dumps/Test_terminal_scrollback_3.dump
+
+Patch 8.2.0391 (after 8.2.0377)
+Problem: CI test coverage dropped.
+Solution: Set $DISPLAY also for non-GUI builds. (James McCoy, closes #5788)
+Files: .travis.yml
+
+Patch 8.2.0392
+Problem: Coverity warns for using array index out of range.
+Solution: Add extra "if" to avoid warning.
+Files: src/menu.c
+
+Patch 8.2.0393
+Problem: Coverity warns for not using return value.
+Solution: Add (void).
+Files: src/popupmenu.c
+
+Patch 8.2.0394
+Problem: Coverity complains about using NULL pointer.
+Solution: Use empty string when option value is NULL.
+Files: src/optionstr.c
+
+Patch 8.2.0395
+Problem: Build fails with FEAT_EVAL but without FEAT_MENU.
+Solution: Add #ifdef. (John Marriott)
+Files: src/evalfunc.c
+
+Patch 8.2.0396
+Problem: Cmdexpand.c insufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5789)
+Files: src/testdir/test_cmdline.vim, src/testdir/test_taglist.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_usercommands.vim
+
+Patch 8.2.0397
+Problem: Delayed screen update when using undo from Insert mode.
+Solution: Update w_topline and cursor shape before sleeping. (closes #5790)
+Files: src/normal.c
+
+Patch 8.2.0398
+Problem: Profile test fails when two functions take same time.
+Solution: Add a short sleep in once function. (closes #5797)
+Files: src/testdir/test_profile.vim
+
+Patch 8.2.0399
+Problem: Various memory leaks.
+Solution: Avoid the leaks. (Ozaki Kiichi, closes #5803)
+Files: src/ex_docmd.c, src/ex_getln.c, src/menu.c, src/message.c,
+ src/scriptfile.c, src/userfunc.c
+
+Patch 8.2.0400
+Problem: Not all tests using a terminal are in the list of flaky tests.
+Solution: Introduce the test_is_flaky flag.
+Files: src/testdir/runtest.vim, src/testdir/term_util.vim,
+ src/testdir/screendump.vim, src/testdir/test_autocmd.vim
+
+Patch 8.2.0401
+Problem: Not enough test coverage for evalvars.c.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5804)
+Files: src/testdir/test_cmdline.vim, src/testdir/test_const.vim,
+ src/testdir/test_diffmode.vim, src/testdir/test_excmd.vim,
+ src/testdir/test_functions.vim, src/testdir/test_let.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_spell.vim,
+ src/testdir/test_unlet.vim, src/testdir/test_user_func.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.0402 (after 8.2.0401)
+Problem: Setting local instead of global flag.
+Solution: Prepend "g:" to "test_is_flaky".
+Files: src/testdir/term_util.vim, src/testdir/screendump.vim,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.0403
+Problem: When 'buftype' is "nofile" there is no overwrite check.
+Solution: Also check for existing file when 'buftype' is set.
+ (closes #5807)
+Files: src/ex_cmds.c, src/testdir/test_options.vim
+
+Patch 8.2.0404
+Problem: Writefile() error does not give a hint.
+Solution: Add remark about first argument.
+Files: src/filepath.c, src/testdir/test_writefile.vim
+
+Patch 8.2.0405
+Problem: MSVC: build fails with some combination of features.
+Solution: Enable CHANNEL if TERMINAL is enabled. (Mike Williams)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0406
+Problem: FileReadCmd event not well tested.
+Solution: Add a test.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.0407
+Problem: No early check if :find and :sfind have an argument.
+Solution: Add EX_NEEDARG.
+Files: src/ex_cmds.h, src/testdir/test_findfile.vim,
+ src/testdir/test_find_complete.vim
+
+Patch 8.2.0408
+Problem: Delete() commented out for testing.
+Solution: Undo commenting-out.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0409
+Problem: Search test leaves file behind.
+Solution: Delete the file. Also use Check commands.
+Files: src/testdir/test_search.vim
+
+Patch 8.2.0410
+Problem: Channel test fails too often on slow Mac.
+Solution: Increase waiting time to 10 seconds.
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.0411
+Problem: Mac: breakcheck is using a value from the stone ages.
+Solution: Delete BREAKCHECK_SKIP from the Mac header file. (Ben Jackson)
+Files: src/os_mac.h
+
+Patch 8.2.0412
+Problem: MS-Windows: cannot use vimtutor from the start menu.
+Solution: Better check for writable directory. Use the right path for the
+ executable. (Wu Yongwei, closes #5774, closes #5756)
+Files: vimtutor.bat
+
+Patch 8.2.0413
+Problem: Buffer menu does not handle special buffers properly.
+Solution: Keep a dictionary with buffer names to reliably keep track of
+ entries.
+ Also trigger BufFilePre and BufFilePost for command-line and
+ terminal buffers when the name changes.
+Files: src/testdir/test_alot.vim, src/testdir/Make_all.mak,
+ runtime/menu.vim, src/ex_getln.c, src/terminal.c,
+ src/testdir/test_menu.vim
+
+Patch 8.2.0414
+Problem: Channel connect_waittime() test is flaky.
+Solution: Set the test_is_flaky flag. Use test_is_flaky for more tests.
+Files: src/testdir/test_channel.vim, src/testdir/test_terminal.vim,
+ src/testdir/runtest.vim
+
+Patch 8.2.0415
+Problem: Bsdl filetype is not detected.
+Solution: Add an entry in the filetype list. (Daniel Kho, closes #5810)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0416
+Problem: Test leaves file behind.
+Solution: Delete the file.
+Files: src/testdir/test_indent.vim
+
+Patch 8.2.0417
+Problem: Travis CI config can be improved.
+Solution: Remove COVERAGE variable. Add load-snd-dummy script. add "-i NONE"
+ to avoid messages about viminfo. (Ozaki Kiichi, closes #5813)
+Files: .travis.yml, ci/load-snd-dummy.sh
+
+Patch 8.2.0418
+Problem: Code in eval.c not sufficiently covered by tests.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5815)
+Files: src/testdir/test_blob.vim, src/testdir/test_channel.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_eval_stuff.vim,
+ src/testdir/test_expr.vim, src/testdir/test_functions.vim,
+ src/testdir/test_job_fails.vim, src/testdir/test_lambda.vim,
+ src/testdir/test_let.vim, src/testdir/test_listdict.vim,
+ src/testdir/test_marks.vim, src/testdir/test_method.vim,
+ src/testdir/test_normal.vim, src/testdir/test_unlet.vim,
+ src/testdir/test_usercommands.vim, src/testdir/test_vimscript.vim,
+ src/testdir/test_window_cmd.vim
+
+Patch 8.2.0419
+Problem: Various memory leaks in Vim9 script code.
+Solution: Fix the leaks. (Ozaki Kiichi, closes #5814)
+Files: src/proto/vim9compile.pro, src/scriptfile.c, src/structs.h,
+ src/testdir/test_vim9_script.vim, src/vim9.h, src/vim9compile.c,
+ src/vim9execute.c, src/vim9script.c
+
+Patch 8.2.0420
+Problem: Vim9: cannot interrupt a loop with CTRL-C.
+Solution: Check for CTRL-C once in a while. Doesn't fully work yet.
+Files: src/misc1.c, src/proto/misc1.pro,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0421
+Problem: Interrupting with CTRL-C does not always work.
+Solution: Recognize CTRL-C while modifyOtherKeys is set.
+Files: src/ui.c, src/testdir/test_vim9_script.vim, src/evalfunc.c
+
+Patch 8.2.0422
+Problem: Crash when passing popup window to win_splitmove(). (john Devin)
+Solution: Disallow moving a popup window. (closes #5816)
+Files: src/testdir/test_popupwin.vim, src/evalwindow.c
+
+Patch 8.2.0423
+Problem: In some environments a few tests are expected to fail.
+Solution: Add $TEST_MAY_FAIL to list tests that should not cause make to
+ fail.
+Files: src/testdir/runtest.vim
+
+Patch 8.2.0424
+Problem: Checking for wrong return value. (Tom)
+Solution: Invert the check and fix the test.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0425
+Problem: Code for modeless selection not sufficiently tested.
+Solution: Add tests. Move mouse code functionality to a common script file.
+ (Yegappan Lakshmanan, closes #5821)
+Files: src/testdir/Make_all.mak, src/testdir/gen_opt_test.vim,
+ src/testdir/mouse.vim, src/testdir/test_edit.vim,
+ src/testdir/test_global.vim, src/testdir/test_modeless.vim,
+ src/testdir/test_normal.vim, src/testdir/test_selectmode.vim,
+ src/testdir/test_termcodes.vim, src/testdir/test_visual.vim,
+ src/ui.c
+
+Patch 8.2.0426
+Problem: Some errors were not tested for.
+Solution: Add tests. (Dominique Pellé, closes #5824)
+Files: src/testdir/test_buffer.vim, src/testdir/test_options.vim,
+ src/testdir/test_tcl.vim, src/testdir/test_terminal.vim,
+ src/testdir/test_window_cmd.vim
+
+Patch 8.2.0427
+Problem: It is not possible to check for a typo in a feature name.
+Solution: Add an extra argument to has().
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/check.vim,
+ src/testdir/test_functions.vim
+
+Patch 8.2.0428
+Problem: Buffer name may leak.
+Solution: Free the buffer name before overwriting it.
+Files: src/terminal.c
+
+Patch 8.2.0429
+Problem: No warning when test checks for option that never exists.
+Solution: In tests check that the option can exist.
+Files: src/testdir/check.vim
+
+Patch 8.2.0430
+Problem: Window creation failure not properly tested.
+Solution: Improve the test. (Yegappan Lakshmanan, closes #5826)
+Files: src/testdir/test_cmdline.vim, src/testdir/test_window_cmd.vim
+
+Patch 8.2.0431
+Problem: Some compilers don't support using \e for Esc. (Yegappan
+ Lakshmanan)
+Solution: use \033 instead.
+Files: src/ui.c
+
+Patch 8.2.0432
+Problem: A few tests fail in a huge terminal.
+Solution: Make the tests pass. (Dominique Pellé, closes #5829)
+Files: src/testdir/test_autocmd.vim, src/testdir/test_options.vim,
+ src/testdir/test_termcodes.vim, src/testdir/test_terminal.vim,
+ src/testdir/test_window_cmd.vim
+
+Patch 8.2.0433
+Problem: INT signal not properly tested.
+Solution: Add a test. Also clean up some unnecessary lines. (Dominique
+ Pellé, closes #5828)
+Files: src/testdir/test_display.vim, src/testdir/test_ex_mode.vim,
+ src/testdir/test_excmd.vim, src/testdir/test_messages.vim,
+ src/testdir/test_signals.vim
+
+Patch 8.2.0434
+Problem: MS-Windows with VTP: Normal color not working.
+Solution: After changing the Normal color update the VTP console color.
+ (Nobuhiro Takasaki, closes #5836)
+Files: src/highlight.c
+
+Patch 8.2.0435
+Problem: Channel contents might be freed twice.
+Solution: Call either channel_free_channel() or channel_free(), not both.
+ (Nobuhiro Takasaki, closes #5835)
+Files: src/channel.c
+
+Patch 8.2.0436
+Problem: No warnings for incorrect printf arguments.
+Solution: Fix attribute in declaration. Fix uncovered mistakes. (Dominique
+ Pellé, closes #5834)
+Files: src/proto.h, src/eval.c, src/ops.c, src/spellfile.c,
+ src/vim9compile.c, src/vim9execute.c, src/viminfo.c, src/gui.c
+
+Patch 8.2.0437
+Problem: MS-Windows installer contains old stuff.
+Solution: Rely on Windows NT. (Ken Takata, closes #5832)
+Files: src/dosinst.c
+
+Patch 8.2.0438
+Problem: Terminal noblock test is very flaky on BSD.
+Solution: Change WaitFor() to WaitForAssert() to be able to see why it
+ failed. Add a short wait in between sending keys.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0439
+Problem: :disassemble has minor flaws.
+Solution: Format the code. Use (int) instead of (char) for %c.
+ (also by James McCoy, closes #5831)
+Files: src/vim9execute.c
+
+Patch 8.2.0440
+Problem: Terminal noblock test is still very flaky on BSD.
+Solution: Increase the waiting time.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0441
+Problem: Terminal noblock test is still failing on BSD.
+Solution: Reduce the amount of text.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0442
+Problem: Channel contents might be used after being freed.
+Solution: Reset the job channel before freeing the channel.
+Files: src/channel.c
+
+Patch 8.2.0443
+Problem: Clipboard code is spread out.
+Solution: Move clipboard code to its own file. (Yegappan Lakshmanan,
+ closes #5827)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/clipboard.c, src/ops.c, src/proto.h, src/proto/clipboard.pro,
+ src/proto/ops.pro, src/proto/register.pro, src/proto/ui.pro,
+ src/register.c, src/ui.c
+
+Patch 8.2.0444
+Problem: Swap file test fails on some systems.
+Solution: Preserve the swap file. Send NL terminated keys.
+Files: src/testdir/test_swap.vim
+
+Patch 8.2.0445
+Problem: Png and xpm files not in MS-Windows zip file.
+Solution: Move files to shared between Unix and Windows target.
+Files: Filelist
+
+Patch 8.2.0446
+Problem: Listener with undo of deleting all lines not tested.
+Solution: Add a test.
+Files: src/testdir/test_listener.vim
+
+Patch 8.2.0447
+Problem: Terminal scroll tests fails on some systems.
+Solution: Remove the fixed 100msec wait for Win32. Add a loop to wait until
+ scrolling has finished. (James McCoy, closes #5842)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0448
+Problem: Various functions not properly tested.
+Solution: Add more tests, especially for failures. (Yegappan Lakshmanan,
+ closes #5843)
+Files: runtime/doc/eval.txt, src/testdir/test_blob.vim,
+ src/testdir/test_breakindent.vim, src/testdir/test_charsearch.vim,
+ src/testdir/test_clientserver.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_exists.vim, src/testdir/test_expand_func.vim,
+ src/testdir/test_expr.vim, src/testdir/test_file_perm.vim,
+ src/testdir/test_functions.vim, src/testdir/test_gui.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_marks.vim,
+ src/testdir/test_partial.vim, src/testdir/test_registers.vim,
+ src/testdir/test_search.vim, src/testdir/test_spell.vim,
+ src/testdir/test_substitute.vim, src/testdir/test_syn_attr.vim,
+ src/testdir/test_syntax.vim, src/testdir/test_taglist.vim,
+ src/testdir/test_utf8.vim, src/testdir/test_vartabs.vim,
+ src/testdir/test_window_cmd.vim
+
+Patch 8.2.0449
+Problem: Vim9: crash if return type is invalid. (Yegappan Lakshmanan)
+Solution: Always return some type, not NULL.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0450
+Problem: Not enough testing for restricted mode and function calls.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5847)
+Files: src/testdir/test_method.vim, src/testdir/test_restricted.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0451
+Problem: Win32: double-width character displayed incorrectly.
+Solution: First move the cursor to the first column. (Nobuhiro Takasaki,
+ closes #5848)
+Files: src/os_win32.c
+
+Patch 8.2.0452
+Problem: channel_parse_messages() fails when called recursively.
+Solution: Return for a recursive call. (closes #5835)
+Files: src/channel.c
+
+Patch 8.2.0453
+Problem: Trailing space in job_start() command causes empty argument.
+Solution: Ignore trailing space. (closes #5851)
+Files: src/misc2.c, src/testdir/test_channel.vim
+
+Patch 8.2.0454
+Problem: Some tests fail when the system is slow.
+Solution: Make the run number global, use in the test to increase the
+ waiting time. (closes #5841)
+Files: src/testdir/runtest.vim, src/testdir/test_functions.vim
+
+Patch 8.2.0455
+Problem: Cannot set the highlight group for a specific terminal.
+Solution: Add the "highlight" option to term_start(). (closes #5818)
+Files: src/terminal.c, src/structs.h, src/channel.c,
+ src/testdir/test_terminal.vim, runtime/doc/terminal.txt,
+ src/testdir/dumps/Test_terminal_popup_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_MyTermCol.dump
+
+Patch 8.2.0456
+Problem: Test_confirm_cmd is flaky.
+Solution: Add a term_wait() call. (closes #5854)
+Files: src/testdir/test_excmd.vim
+
+Patch 8.2.0457
+Problem: Test_quotestar() often fails when run under valgrind.
+Solution: Wait longer for the GUI to start.
+Files: src/testdir/test_quotestar.vim
+
+Patch 8.2.0458
+Problem: Missing feature check in test function.
+Solution: Add check commands.
+Files: src/testdir/test_excmd.vim
+
+Patch 8.2.0459
+Problem: Cannot check if a function name is correct.
+Solution: Add "?funcname" to exists().
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_exists.vim,
+ src/testdir/check.vim
+
+Patch 8.2.0460 (after 8.2.0459)
+Problem: Build failure because of wrong feature name.
+Solution: Correct feature name.
+Files: src/evalfunc.c
+
+Patch 8.2.0461
+Problem: Confirm test fails on amd64 system. (Alimar Riesebieter)
+Solution: Add an extra WaitForAssert(). (Dominique Pellé)
+Files: src/testdir/test_excmd.vim
+
+Patch 8.2.0462
+Problem: Previewwindow test fails on some systems. (James McCoy)
+Solution: Wait a bit after sending the "o". (closes #5849)
+Files: src/testdir/test_popup.vim,
+ src/testdir/dumps/Test_popup_and_previewwindow_01.dump
+
+Patch 8.2.0463
+Problem: Build error without float and channel feature. (John Marriott)
+Solution: Define return types always.
+Files: src/globals.h, src/evalfunc.c
+
+Patch 8.2.0464
+Problem: Typos and other small problems.
+Solution: Fix the typos. Add missing files to the distribution.
+Files: Filelist, src/buffer.c, src/drawline.c, src/gui_gtk_x11.c,
+ src/os_unixx.h, src/proto/popupwin.pro
+
+Patch 8.2.0465
+Problem: Vim9: dead code and wrong return type.
+Solution: Remove dead code. Fix return type. Add more tests.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0466 (after 8.2.0452)
+Problem: Not parsing messages recursively breaks the govim plugin.
+Solution: When called recursively do handle messages but do not close
+ channels.
+Files: src/channel.c
+
+Patch 8.2.0467
+Problem: Vim9: some errors are not tested
+Solution: Add more tests. Fix that Vim9 script flag is not reset.
+Files: src/vim9compile.c, src/scriptfile.c, src/dict.c,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0468
+Problem: GUI: pixel dust with some fonts and characters.
+Solution: Always redraw the character before the cursor. (Nir Lichtman,
+ closes #5549, closes #5856)
+Files: src/gui.c, src/proto/gui.pro, src/screen.c
+
+Patch 8.2.0469
+Problem: Vim9: no error for missing ] after list.
+Solution: Add error message. Add more tests.
+Files: src/globals.h, src/list.c, src/userfunc.c,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_lambda.vim
+
+Patch 8.2.0470
+Problem: Test_confirm_cmd_cancel() can fail on a slow system.
+Solution: Use WaitForAssert(). (Ozaki Kiichi, closes #5861)
+Files: src/testdir/test_excmd.vim
+
+Patch 8.2.0471
+Problem: Missing change to compile_list().
+Solution: Add error message.
+Files: src/vim9compile.c
+
+Patch 8.2.0472
+Problem: Terminal highlight name is set twice, leaking memory.
+Solution: Delete one.
+Files: src/terminal.c
+
+Patch 8.2.0473
+Problem: Variables declared in an outer scope.
+Solution: Declare variables only in the scope where they are used.
+Files: src/evalvars.c
+
+Patch 8.2.0474 (after 8.2.0403)
+Problem: Cannot use :write when using a plugin with BufWriteCmd.
+Solution: Reset BF_NOTEDITED after BufWriteCmd. (closes #5807)
+Files: src/fileio.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.0475
+Problem: Channel out_cb test still fails sometimes on Mac.
+Solution: Use an even longer timeout.
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.0476
+Problem: Terminal nasty callback test fails sometimes.
+Solution: use term_wait() instead of a sleep. (Yee Cheng Chin, closes #5865)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0477
+Problem: Vim9: error messages not tested.
+Solution: Add more tests.
+Files: src/testdir/test_vim9_expr.vim, src/vim9execute.c
+
+Patch 8.2.0478
+Problem: New buffers are not added to the Buffers menu.
+Solution: Turn number into string. (Yee Cheng Chin, closes #5864)
+Files: runtime/menu.vim, src/testdir/test_menu.vim
+
+Patch 8.2.0479
+Problem: Unloading shared libraries on exit has no purpose.
+Solution: Do not unload shared libraries on exit.
+Files: src/if_lua.c, src/if_perl.xs, src/if_python.c, src/if_python3.c,
+ src/if_ruby.c, src/if_tcl.c
+
+Patch 8.2.0480
+Problem: Vim9: some code is not tested.
+Solution: Add more tests.
+Files: src/testdir/test_vim9_expr.vim, src/vim9compile.c
+
+Patch 8.2.0481
+Problem: Travis is still using trusty.
+Solution: Adjust config to use bionic. (Ozaki Kiichi, closes #5868)
+Files: .travis.yml, src/testdir/lsan-suppress.txt
+
+Patch 8.2.0482
+Problem: Channel and sandbox code not sufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5855)
+Files: src/option.h, src/testdir/test_channel.vim,
+ src/testdir/test_clientserver.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
+ src/testdir/test_normal.vim, src/testdir/test_prompt_buffer.vim,
+ src/testdir/test_restricted.vim, src/testdir/test_smartindent.vim,
+ src/testdir/test_substitute.vim, src/testdir/test_terminal.vim,
+ src/testdir/test_textformat.vim, src/testdir/test_visual.vim
+
+Patch 8.2.0483
+Problem: Vim9: "let x = x + 1" does not give an error.
+Solution: Hide the variable when compiling the expression.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0484
+Problem: Vim9: some error messages not tested.
+Solution: Add more tests.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0485 (after 8.2.0483)
+Problem: Vim9 script test fails.
+Solution: Stricter condition for adding new local variable.
+Files: Stricter condition for adding new local variable.
+
+Patch 8.2.0486
+Problem: Vim9: some code and error messages not tested.
+Solution: Add more tests.
+Files: src/vim9compile.c, src/evalvars.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0487
+Problem: Vim9: compiling not sufficiently tested.
+Solution: Add more tests. Fix bug with PCALL.
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0488
+Problem: Vim9: Compiling can break when using a lambda inside :def.
+Solution: Do not keep a pointer to the dfunc_T for longer time.
+Files: src/vim9compile.c, src/vim9.h
+
+Patch 8.2.0489
+Problem: Vim9: memory leaks.
+Solution: Free memory in the right place. Add hints for using asan.
+Files: src/vim9compile.c, src/testdir/lsan-suppress.txt, src/Makefile
+
+Patch 8.2.0490
+Problem: Win32: VTP doesn't respect 'restorescreen'.
+Solution: Use escape codes to switch to alternate screen. (Nobuhiro
+ Takasaki, closes #5872)
+Files: src/os_win32.c
+
+Patch 8.2.0491
+Problem: Cannot recognize a <script> mapping using maparg().
+Solution: Add the "script" key. (closes #5873)
+Files: src/map.c, runtime/doc/eval.txt, src/testdir/test_maparg.vim
+
+Patch 8.2.0492
+Problem: Vim9: some error messages not tested.
+Solution: Add more tests. Remove dead code. Fix uncovered bugs.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0493
+Problem: Vim9: some error messages not tested.
+Solution: Add more tests. Fix uncovered bugs.
+Files: src/vim9compile.c, src/vim9execute.c, src/testing.c, src/eval.c,
+ src/proto/testing.pro, src/evalfunc.c, runtime/doc/eval.txt,
+ runtime/doc/testing.txt, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0494
+Problem: Vim9: asan error.
+Solution: Only get the type when there is one.
+Files: src/vim9compile.c
+
+Patch 8.2.0495
+Problem: Vim9: some code not tested.
+Solution: Add more tests. Support more const expressions.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0496
+Problem: Vim9: disassemble test fails.
+Solution: Separate test cases with recognized constant expressions.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0497
+Problem: Too verbose output from the asan build in Travis.
+Solution: Filter out suppression messages. (Ozaki Kiichi, closes #5874)
+Files: .travis.yml
+
+Patch 8.2.0498
+Problem: Coverity complains about uninitialized field.
+Solution: Initialize the whole typval_T.
+Files: src/vim9compile.c
+
+Patch 8.2.0499
+Problem: Calling a lambda is slower than evaluating a string.
+Solution: Make calling a lambda faster. (Ken Takata, closes #5727)
+Files: src/userfunc.c
+
+Patch 8.2.0500
+Problem: Using the same loop in many places.
+Solution: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)
+Files: src/arglist.c, src/autocmd.c, src/buffer.c, src/change.c,
+ src/channel.c, src/cmdexpand.c, src/diff.c, src/eval.c,
+ src/evalbuffer.c, src/evalfunc.c, src/evalvars.c,
+ src/evalwindow.c, src/ex_cmds2.c, src/filepath.c, src/globals.h,
+ src/gui.c, src/if_py_both.h, src/if_ruby.c, src/insexpand.c,
+ src/list.c, src/misc2.c, src/netbeans.c, src/popupwin.c,
+ src/quickfix.c, src/screen.c, src/sign.c, src/spell.c,
+ src/spellfile.c, src/spellsuggest.c, src/tag.c, src/terminal.c,
+ src/userfunc.c, src/window.c
+
+Patch 8.2.0501
+Problem: Vim9: script test fails when channel feature is missing.
+Solution: Add a has() condition.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0502
+Problem: Vim9: some code is not tested.
+Solution: Add more tests. Fix uncovered problems.
+Files: src/vim9compile.c, src/regexp.c, src/proto/regexp.pro,
+ src/cmdexpand.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c,
+ src/ex_getln.c, src/highlight.c, src/search.c, src/syntax.c,
+ src/tag.c, src/userfunc.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0503
+Problem: Vim9: some code is not tested.
+Solution: Add tests. Fix uncovered problems.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0504
+Problem: Vim9: leaking scope memory when compilation fails.
+Solution: Cleanup the scope list.
+Files: src/vim9compile.c
+
+Patch 8.2.0505
+Problem: term_gettty() not sufficiently tested.
+Solution: Add more asserts. (Dominique Pellé, closes #5877)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0506
+Problem: Coverity complains about ignoring return value.
+Solution: Add (void).
+Files: src/userfunc.c
+
+Patch 8.2.0507 (after 8.2.0472)
+Problem: Getbufvar() may get the wrong dictionary. (David le Blanc)
+Solution: Check for empty name. (closes #5878)
+Files: src/evalvars.c, src/testdir/test_functions.vim
+
+Patch 8.2.0508
+Problem: Vim9: func and partial types not done yet
+Solution: Fill in details about func declaration, drop a separate partial
+ declaration.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/globals.h,
+ src/structs.h, src/evalfunc.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0509
+Problem: various code is not properly tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5871)
+Files: src/main.c, src/testdir/check.vim, src/testdir/shared.vim,
+ src/testdir/term_util.vim, src/testdir/test_clientserver.vim,
+ src/testdir/test_ex_mode.vim, src/testdir/test_expand.vim,
+ src/testdir/test_functions.vim, src/testdir/test_options.vim,
+ src/testdir/test_startup.vim, src/testdir/test_textformat.vim,
+ src/testdir/test_trycatch.vim, src/testdir/test_viminfo.vim
+
+Patch 8.2.0510
+Problem: Coverity complains about using uninitialized variable.
+Solution: Assign a value to "scol". Move code inside NULL check.
+Files: src/beval.c, src/popupwin.c
+
+Patch 8.2.0511
+Problem: Cscope code not fully tested.
+Solution: Add more test cases. (Dominique Pellé, closes #5886)
+Files: src/testdir/test_cscope.vim
+
+Patch 8.2.0512
+Problem: Vim9: no optional arguments in func type.
+Solution: Check for question mark after type. Find function reference
+ without function().
+Files: src/vim9compile.c, src/vim9execute.c, src/structs.h,
+ src/globals.h, src/vim.h, src/vim9.h, src/userfunc.c,
+ src/testdir/Make_all.mak, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0513
+Problem: Reading past allocated memory when using varargs.
+Solution: Fix copying function argument types.
+Files: src/vim9compile.c
+
+Patch 8.2.0514
+Problem: Several global functions are used in only one file.
+Solution: Make the functions static. (Yegappan Lakshmanan, closes #5884)
+Files: src/drawscreen.c, src/evalvars.c, src/getchar.c, src/list.c,
+ src/proto/drawscreen.pro, src/proto/evalvars.pro,
+ src/proto/getchar.pro, src/proto/list.pro, src/proto/version.pro,
+ src/version.c
+
+Patch 8.2.0515
+Problem: Some compilers cannot add to "void *".
+Solution: Cast to "char *".
+Files: src/vim9compile.c
+
+Patch 8.2.0516
+Problem: Client-server code is spread out.
+Solution: Move client-server code to a new file. (Yegappan Lakshmanan,
+ closes #5885)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/clientserver.c, src/evalfunc.c, src/main.c, src/proto.h,
+ src/proto/clientserver.pro, src/proto/main.pro
+
+Patch 8.2.0517
+Problem: Vim9: cannot separate "func" and "func(): void".
+Solution: Use VAR_ANY for "any" and VAR_UNKNOWN for "no type".
+Files: src/structs.h, src/globals.h, src/eval.c, src/evalfunc.c,
+ src/evalvars.c, src/testing.c, src/vim9compile.c,
+ src/vim9execute.c, src/viminfo.c, src/if_py_both.h, src/json.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.0518
+Problem: A terminal falls back to setting $TERM to "xterm".
+Solution: Use "xterm-color" if more than 16 colors are supported and
+ "xterm-256color" if at least 256 colors are supported.
+ (closes #5887)
+Files: src/os_unix.c
+
+Patch 8.2.0519
+Problem: Vim9: return type not properly checked.
+Solution: Check type properly, also at runtime.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0520
+Problem: Tests are not listed in sorted order.
+Solution: Move test_ex_mode. (Doug Richardson, closes #5889)
+Files: src/testdir/Make_all.mak
+
+Patch 8.2.0521
+Problem: Crash when reading a blob fails.
+Solution: Avoid keeping a pointer to a freed blob object. (Dominique Pellé,
+ closes #5890) Adjust error messages.
+Files: src/filepath.c, src/testdir/test_blob.vim
+
+Patch 8.2.0522
+Problem: Several errors are not tested for.
+Solution: Add tests. (Yegappan Lakshmanan, closes #5892)
+Files: src/testdir/test_autocmd.vim, src/testdir/test_clientserver.vim,
+ src/testdir/test_digraph.vim, src/testdir/test_expand.vim,
+ src/testdir/test_expr.vim, src/testdir/test_functions.vim,
+ src/testdir/test_gui.vim, src/testdir/test_highlight.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_lambda.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_normal.vim,
+ src/testdir/test_options.vim, src/testdir/test_preview.vim,
+ src/testdir/test_user_func.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_viminfo.vim,
+ src/testdir/test_vimscript.vim, src/testdir/test_window_cmd.vim
+
+Patch 8.2.0523
+Problem: Loops are repeated.
+Solution: Use FOR_ALL_ macros. (Yegappan Lakshmanan, closes #5882)
+Files: src/buffer.c, src/drawscreen.c, src/evalfunc.c, src/evalwindow.c,
+ src/globals.h, src/gui_athena.c, src/gui_gtk.c, src/gui_motif.c,
+ src/gui_w32.c, src/list.c, src/menu.c, src/popupmenu.c,
+ src/popupwin.c, src/quickfix.c, src/syntax.c, src/time.c,
+ src/userfunc.c, src/vim9compile.c
+
+Patch 8.2.0524
+Problem: Win32: searching for file matches is slow.
+Solution: Instead of making another round to find any short filename, check
+ for the short name right away. Avoid using an ordinary file like a
+ directory. (Nir Lichtman, closes #5883)
+Files: src/filepath.c
+
+Patch 8.2.0525 (after 8.2.0524)
+Problem: Win32: typo in assignment and misplaced paren.
+Solution: Fix the syntax.
+Files: src/filepath.c
+
+Patch 8.2.0526
+Problem: Gcc 9 complains about empty statement.
+Solution: Add {}. (Dominique Pellé, closes #5894)
+Files: src/evalfunc.c
+
+Patch 8.2.0527
+Problem: Vim9: function types insufficiently tested.
+Solution: Add more tests. Fix white space check. Add "test_vim9" target.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim, src/Makefile,
+ src/testdir/Makefile, src/testdir/Make_all.mak
+
+Patch 8.2.0528
+Problem: Vim9: function arguments insufficiently tested.
+Solution: Check types. Add more tests. Fix function with varargs only.
+Files: src/vim9compile.c, src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0529
+Problem: Vim9: function argument with default not checked.
+Solution: Check type of argument with default value.
+Files: src/vim9compile.c, src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0530
+Problem: Test crashes on s390. (James McCoy)
+Solution: Explicitly define an 8 big signed type. (closes #5897)
+Files: src/structs.h
+
+Patch 8.2.0531
+Problem: Various errors not tested.
+Solution: Add tests. (Yegappan Lakshmanan, closes #5895)
+Files: src/testdir/test_search.vim, src/testdir/test_source.vim,
+ src/testdir/test_syntax.vim, src/testdir/test_user_func.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.0532
+Problem: Cannot use simplify() as a method.
+Solution: Add FEARG_1. (closes #5896)
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_functions.vim
+
+Patch 8.2.0533
+Problem: Tests using term_wait() can still be flaky.
+Solution: Increase the wait time when rerunning a test. (James McCoy,
+ closes #5899) Halve the initial times to make tests run faster
+ when there is no rerun.
+Files: src/testdir/term_util.vim, src/testdir/test_arglist.vim,
+ src/testdir/test_autocmd.vim, src/testdir/test_balloon.vim,
+ src/testdir/test_bufline.vim, src/testdir/test_channel.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_conceal.vim,
+ src/testdir/test_cursorline.vim, src/testdir/test_debugger.vim,
+ src/testdir/test_diffmode.vim, src/testdir/test_display.vim,
+ src/testdir/test_functions.vim, src/testdir/test_highlight.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_mapping.vim,
+ src/testdir/test_match.vim, src/testdir/test_matchadd_conceal.vim,
+ src/testdir/test_messages.vim, src/testdir/test_number.vim,
+ src/testdir/test_popup.vim, src/testdir/test_popupwin.vim,
+ src/testdir/test_profile.vim, src/testdir/test_search.vim,
+ src/testdir/test_search_stat.vim, src/testdir/test_startup.vim,
+ src/testdir/test_startup_utf8.vim,
+ src/testdir/test_statusline.vim, src/testdir/test_suspend.vim,
+ src/testdir/test_swap.vim, src/testdir/test_tagjump.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_terminal_fail.vim,
+ src/testdir/test_timers.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.0534
+Problem: Client-server test fails under valgrind.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_clientserver.vim
+
+Patch 8.2.0535
+Problem: Regexp patterns not fully tested.
+Solution: Add more regexp tests and others. (Yegappan Lakshmanan,
+ closes #5901)
+Files: src/testdir/test_marks.vim, src/testdir/test_options.vim,
+ src/testdir/test_regexp_latin.vim, src/testdir/test_search.vim
+
+Patch 8.2.0536
+Problem: Vim9: some compilation code not tested.
+Solution: Add more test cases.
+Files: src/evalvars.c, src/proto/evalvars.pro, src/vim9compile.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0537
+Problem: Vim9: no check for sandbox when setting v:var.
+Solution: Check for sandbox.
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0538
+Problem: Vim9: VAR_PARTIAL is not used during compilation.
+Solution: Remove VAR_PARTIAL.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.0539
+Problem: Comparing two NULL list fails.
+Solution: Change the order of comparing two lists.
+Files: src/list.c, src/testdir/test_assert.vim
+
+Patch 8.2.0540
+Problem: Regexp and other code not tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5904)
+Files: src/testdir/test_backspace_opt.vim, src/testdir/test_expr.vim,
+ src/testdir/test_increment.vim, src/testdir/test_normal.vim,
+ src/testdir/test_options.vim, src/testdir/test_regexp_latin.vim,
+ src/testdir/test_search.vim, src/testdir/test_substitute.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_virtualedit.vim
+
+Patch 8.2.0541
+Problem: Travis CI does not give compiler warnings.
+Solution: Add flags for warnings. Fix uncovered problems. (Ozaki Kiichi,
+ closes #5898)
+Files: .travis.yml, ci/config.mk.clang.sed, ci/config.mk.gcc.sed,
+ ci/config.mk.sed, src/if_perl.xs, src/if_ruby.c,
+ src/libvterm/t/harness.c
+
+Patch 8.2.0542
+Problem: No test for E386.
+Solution: Add a test. (Dominique Pellé, closes #5911)
+Files: src/testdir/test_search.vim
+
+Patch 8.2.0543
+Problem: Vim9: function with varargs does not work properly.
+Solution: Improve function type spec and add tests. Fix bugs.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9execute.c,
+ src/structs.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0544
+Problem: Memory leak in search test.
+Solution: Free msgbuf. (Dominique Pellé, closes #5912)
+Files: src/search.c
+
+Patch 8.2.0545
+Problem: Unused arguments ignored in non-standard way.
+Solution: Add UNUSED instead of (void).
+Files: src/libvterm/t/harness.c
+
+Patch 8.2.0546
+Problem: Vim9: varargs implementation is inefficient.
+Solution: Create list without moving the arguments.
+Files: src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.0547
+Problem: Win32: restoring screen not always done right.
+Solution: Use a more appropriate method. (Nobuhiro Takasaki, closes #5909)
+Files: src/os_win32.c
+
+Patch 8.2.0548
+Problem: Vim9: not all possible func type errors tested.
+Solution: Add more tests.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0549
+Problem: User systemd files not recognized.
+Solution: Add filetype patterns. (Kevin Locke, closes #5914)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0550
+Problem: Some changes in the libvterm upstream code.
+Solution: Include some changes.
+Files: src/libvterm/t/harness.c
+
+Patch 8.2.0551
+Problem: Not all code for options is tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5913)
+Files: src/testdir/test_options.vim, src/testdir/test_python3.vim,
+ src/testdir/test_undo.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.0552
+Problem: Vim9: some errors not covered by tests.
+Solution: Add more tests. Check Funcref argument types.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0553 (after 8.2.0550)
+Problem: Error for unused argument.
+Solution: Add UNUSED.
+Files: src/libvterm/t/harness.c
+
+Patch 8.2.0554
+Problem: The GUI doesn't set t_Co.
+Solution: In the GUI set t_Co to 256 * 256 * 256. (closes #5903)
+Files: src/term.c, src/proto/term.pro, src/gui.c,
+ src/testdir/test_gui.vim
+
+Patch 8.2.0555
+Problem: Vim9: line continuation is not always needed.
+Solution: Recognize continuation lines automatically in list and dict.
+Files: runtime/doc/vim9.txt, src/vim9compile.c,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0556
+Problem: Vim9: memory leak when finding common type.
+Solution: Store allocated memory in type growarray.
+Files: src/vim9compile.c
+
+Patch 8.2.0557
+Problem: No IPv6 support for channels.
+Solution: Add IPv6 support. (Ozaki Kiichi, closes #5893)
+Files: .travis.yml, runtime/doc/channel.txt, runtime/doc/various.txt,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
+ src/channel.c, src/config.h.in, src/configure.ac, src/evalfunc.c,
+ src/proto/channel.pro, src/testdir/check.vim,
+ src/testdir/runtest.vim, src/testdir/test_cdo.vim,
+ src/testdir/test_channel.py, src/testdir/test_channel.vim,
+ src/testdir/test_channel_6.py, src/testdir/test_escaped_glob.vim,
+ src/testdir/test_getcwd.vim, src/testdir/test_hide.vim
+
+Patch 8.2.0558
+Problem: Vim9: dict code not covered by tests.
+Solution: Remove dead code, adjust test case.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0559
+Problem: Clearing a struct is verbose.
+Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
+Files: src/vim.h, src/blowfish.c, src/channel.c, src/charset.c,
+ src/clipboard.c, src/diff.c, src/eval.c, src/evalfunc.c,
+ src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c, src/findfile.c,
+ src/gui_gtk_f.c, src/gui_mac.c, src/gui_motif.c, src/gui_w32.c,
+ src/gui_x11.c, src/hardcopy.c, src/hashtab.c, src/highlight.c,
+ src/if_mzsch.c, src/insexpand.c, src/kword_test.c, src/list.c,
+ src/main.c, src/map.c, src/memfile.c, src/message_test.c,
+ src/misc1.c, src/netbeans.c, src/normal.c, src/ops.c,
+ src/option.c, src/os_mswin.c, src/os_win32.c, src/popupmenu.c,
+ src/quickfix.c, src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c,
+ src/search.c, src/sign.c, src/spell.c, src/spellfile.c,
+ src/spellsuggest.c, src/syntax.c, src/tag.c, src/terminal.c,
+ src/time.c, src/undo.c, src/userfunc.c, src/vim9compile.c,
+ src/vim9execute.c, src/if_py_both.h
+
+Patch 8.2.0560
+Problem: Compiler warning in tiny build.
+Solution: Move declaration inside #ifdef. (Dominique Pellé, closes #5915)
+Files: src/ex_docmd.c
+
+Patch 8.2.0561
+Problem: Vim9: cannot split function call in multiple lines.
+Solution: Find more arguments in following lines.
+Files: runtime/doc/vim9.txt, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0562
+Problem: Vim9: cannot split an expression into multiple lines.
+Solution: Continue in next line after an operator.
+Files: runtime/doc/vim9.txt, src/macros.h, src/vim9compile.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0563
+Problem: Vim9: cannot split a function line.
+Solution: Continue in next line so long as the function isn't done.
+Files: runtime/doc/vim9.txt, src/userfunc.c, src/proto/userfunc.pro,
+ src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0564
+Problem: Vim9: calling a def function from non-vim9 may fail.
+Solution: Convert varargs to a list.
+Files: src/testdir/test_vim9_func.vim, src/vim9execute.c
+
+Patch 8.2.0565
+Problem: Vim9: tests contain superfluous line continuation.
+Solution: Remove line continuation no longer needed. Skip empty lines.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0566
+Problem: Vim9: variable can be used uninitialized.
+Solution: Jump to after where variable is used.
+Files: src/vim9execute.c
+
+Patch 8.2.0567
+Problem: Vim9: cannot put comments halfway expressions.
+Solution: Support # comments in many places.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/userfunc.c,
+ src/ex_docmd.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0568
+Problem: The man filetype plugin overwrites the unnamed register.
+Solution: Use the black hole register. (Jason Franklin)
+Files: runtime/ftplugin/man.vim, src/testdir/test_man.vim
+
+Patch 8.2.0569
+Problem: Build failure with tiny version.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.0570
+Problem: Vim9: no error when omitting type from argument.
+Solution: Enforce specifying argument types.
+Files: src/userfunc.c, src/ex_eval.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0571
+Problem: Double free when passing invalid argument to job_start().
+Solution: Clear the argument when freed. (Masato Nishihata, closes #5926)
+Files: src/misc2.c, src/testdir/test_channel.vim
+
+Patch 8.2.0572 (after 8.2.0571)
+Problem: Using two lines for free and reset.
+Solution: Use VIM_CLEAR() instead. (Yegappan Lakshmanan)
+Files: src/misc2.c
+
+Patch 8.2.0573
+Problem: using :version twice leaks memory
+Solution: Only initialize variables once. (Dominique Pellé, closes #5917)
+Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim,
+ src/testdir/test_version.vim, src/version.c, src/globals.h
+
+Patch 8.2.0574
+Problem: Ipv6 feature not shown in :version output.
+Solution: Add ipv6 in :version output. (Ozaki Kiichi, closes #5924)
+Files: runtime/doc/eval.txt, src/version.c
+
+Patch 8.2.0575
+Problem: :digraph! not tested.
+Solution: Add a test. (Dominique Pellé, closes #5925)
+Files: src/testdir/test_digraph.vim
+
+Patch 8.2.0576
+Problem: Some errors are not covered by tests.
+Solution: Add a few more tests. (Dominique Pellé, closes #5920)
+Files: src/testdir/test_buffer.vim, src/testdir/test_digraph.vim,
+ src/testdir/test_expr.vim, src/testdir/test_messages.vim
+
+Patch 8.2.0577
+Problem: Not all modifiers supported for :options.
+Solution: Use all cmdmod.split flags. (closes #4401)
+Files: src/usercmd.c, src/proto/usercmd.pro, src/scriptfile.c,
+ src/testdir/test_options.vim, src/testdir/test_usercommands.vim
+
+Patch 8.2.0578
+Problem: Heredoc for interfaces does not support "trim".
+Solution: Update the script heredoc support to be same as the :let command.
+ (Yegappan Lakshmanan, closes #5916)
+Files: runtime/doc/if_lua.txt, runtime/doc/if_mzsch.txt,
+ runtime/doc/if_perl.txt, runtime/doc/if_pyth.txt,
+ runtime/doc/if_ruby.txt, runtime/doc/if_tcl.txt, src/evalvars.c,
+ src/ex_getln.c, src/proto/evalvars.pro, src/testdir/test86.in,
+ src/testdir/test87.in, src/testdir/test_lua.vim,
+ src/testdir/test_perl.vim, src/testdir/test_python2.vim,
+ src/testdir/test_python3.vim, src/testdir/test_pyx2.vim,
+ src/testdir/test_pyx3.vim, src/testdir/test_ruby.vim,
+ src/testdir/test_tcl.vim, src/userfunc.c, src/vim9compile.c
+
+Patch 8.2.0579
+Problem: Coverity warns for unused value.
+Solution: Change order and use "else if".
+Files: src/os_unix.c
+
+Patch 8.2.0580
+Problem: Window size wrong if 'ea' is off and 'splitright' is on and
+ splitting then closing a window.
+Solution: Put abandoned window space in the right place. (Mark Waggoner)
+Files: src/testdir/test_winbuf_close.vim, src/window.c
+
+Patch 8.2.0581 (after 8.2.0547)
+Problem: Win32 console: the cursor position is always top-left.
+Solution: Revert the patch for restoring screen.
+Files: src/os_win32.c
+
+Patch 8.2.0582
+Problem: Color ramp test does not show text colors.
+Solution: Add a row of 16 text colors and 16 bold text colors.
+Files: src/testdir/color_ramp.vim
+
+Patch 8.2.0583
+Problem: Vim9: # comment not recognized in :def function.
+Solution: Recognize and skip # comment.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0584
+Problem: Viminfo file uses obsolete function file_readable().
+Solution: Use filereadable(). (closes #5934)
+Files: src/session.c
+
+Patch 8.2.0585
+Problem: Vim9: # comment not recognized after :vim9script.
+Solution: Check script type. Make comment after ":echo" work. And in
+ several other places.
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/eval.c,
+ src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0586
+Problem: Vim9: # comment not sufficiently tested
+Solution: Check for preceding white space.
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0587
+Problem: Compiler warning for unused variable.
+Solution: Add UNUSED.
+Files: src/ex_docmd.c
+
+Patch 8.2.0588
+Problem: Putty does not use "sgr" 'ttymouse' by default.
+Solution: Make "sgr" the default for Putty. (Christian Brabandt,
+ closes #5942)
+Files: src/term.c
+
+Patch 8.2.0589
+Problem: .bsd file type not recognized.
+Solution: Recognize .bsd as BSDL. (Daniel Kho, closes #5945)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0590
+Problem: No 'backspace' value allows ignoring the insertion point.
+Solution: Add the "nostop" and 3 values. (Christian Brabandt, closes #5940)
+Files: runtime/doc/options.txt, src/edit.c, src/option.c, src/option.h,
+ src/optionstr.c, src/testdir/gen_opt_test.vim,
+ src/testdir/test_backspace_opt.vim
+
+Patch 8.2.0591
+Problem: MS-Windows: should always support IPv6
+Solution: Add build flag. (Ozaki Kiichi, closes #5944)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak
+
+Patch 8.2.0592
+Problem: MS-Windows with VTP: cursor is not made invisible.
+Solution: Output the code to make the cursor visible or invisible. (Nobuhiro
+ Takasaki, closes #5941)
+Files: src/os_win32.c
+
+Patch 8.2.0593
+Problem: Finding a user command is not optimal.
+Solution: Start further down in the list of commands.
+Files: src/ex_cmds.h, src/ex_docmd.c
+
+Patch 8.2.0594
+Problem: MS-Windows: cannot build with WINVER set to 0x0501.
+Solution: Only use inet_ntop() when available. (Ozaki Kiichi, closes #5946)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure,
+ src/channel.c, src/config.h.in, src/configure.ac
+
+Patch 8.2.0595
+Problem: Vim9: not all commands using ends_excmd() tested.
+Solution: Find # comment after regular commands. Add more tests. Report
+ error for where it was caused.
+Files: src/ex_docmd.c, src/vim9compile.c, src/vim9execute.c, src/usercmd.c,
+ src/evalfunc.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0596
+Problem: Crash in test49.
+Solution: Check the right pointer.
+Files: src/userfunc.c, src/testdir/test_eval.ok
+
+Patch 8.2.0597
+Problem: Test_eval is old style.
+Solution: Change some tests to a new style test.
+Files: src/testdir/test_eval.in, src/testdir/test_eval.ok,
+ src/testdir/test_eval_stuff.vim
+
+Patch 8.2.0598
+Problem: Test_eval_stuff fails in normal terminal.
+Solution: Close the new window.
+Files: src/testdir/test_eval_stuff.vim
+
+Patch 8.2.0599
+Problem: Netbeans interface insufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5921)
+Files: runtime/doc/netbeans.txt, src/netbeans.c, src/os_win32.c,
+ src/testdir/runtest.vim, src/testdir/test_netbeans.py,
+ src/testdir/test_netbeans.vim
+
+Patch 8.2.0600
+Problem: Vim9: cannot read or write w:, t: and b: variables.
+Solution: Implement load and store for w:, t: and b: variables.
+ (closes #5950)
+Files: src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim,
+ src/vim9.h, src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.0601
+Problem: Vim9: :unlet is not compiled.
+Solution: Implement :unlet instruction and check for errors.
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9.h,
+ src/vim9execute.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/eval.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0602
+Problem: :unlet $VAR does not work properly.
+Solution: Make ":lockvar $VAR" fail. Check the "skip" flag.
+Files: src/evalvars.c, src/globals.h, src/testdir/test_vimscript.vim
+
+Patch 8.2.0603
+Problem: Configure does not detect moonjit.
+Solution: Add check for moonjit. (Shlomi Fish, closes #5947)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0604
+Problem: :startinsert in a terminal window used later.
+Solution: Ignore :startinsert in a terminal window. (closes #5952)
+Files: src/ex_docmd.c, src/testdir/test_terminal.vim
+
+Patch 8.2.0605
+Problem: Vim9: cannot unlet an environment variable.
+Solution: Implement unlet for $VAR.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0606
+Problem: Several syntax HL errors not checked.
+Solution: Add tests. (Yegappan Lakshmanan, closes #5954)
+Files: src/testdir/test_syntax.vim
+
+Patch 8.2.0607
+Problem: Gcc warns for using uninitialized variable. (John Marriott)
+Solution: Set name_end also for environment variables.
+Files: src/evalvars.c
+
+Patch 8.2.0608
+Problem: Warning from clang when building message test.
+Solution: Use a void pointer. (Dominique Pellé, closes #5958)
+Files: src/message_test.c
+
+Patch 8.2.0609
+Problem: Configure does not detect moonjit correctly.
+Solution: Double the brackets. (Ozaki Kiichi)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.0610
+Problem: Some tests are still old style.
+Solution: Convert to new style tests. (Yegappan Lakshmanan, closes #5957)
+Files: src/testdir/test_blob.vim, src/testdir/test_cursor_func.vim,
+ src/testdir/test_eval.in, src/testdir/test_eval.ok,
+ src/testdir/test_eval_func.vim, src/testdir/test_eval_stuff.vim,
+ src/testdir/test_expr.vim, src/testdir/test_filter_map.vim,
+ src/testdir/test_functions.vim, src/testdir/test_listdict.vim,
+ src/testdir/test_sort.vim, src/testdir/test_syntax.vim,
+ src/testdir/test_utf8.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.0611
+Problem: Vim9: no check for space before #comment.
+Solution: Add space checks.
+Files: src/eval.c, src/evalvars.c, src/ex_docmd.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0612
+Problem: Vim9: no check for space before #comment.
+Solution: Add space checks.
+Files: src/ex_eval.c, src/ex_cmds.c, src/regexp.c, src/proto/regexp.pro,
+ src/gui.c, src/highlight.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_sort.vim
+
+Patch 8.2.0613
+Problem: Vim9: no check for space before #comment.
+Solution: Add space checks.
+Files: src/highlight.c, src/menu.c, src/syntax.c,
+ src/testdir/test_vim9_script.vim,
+ runtime/lang/menu_de_de.latin1.vim
+
+Patch 8.2.0614
+Problem: Get ml_get error when deleting a line in 'completefunc'. (Yegappan
+ Lakshmanan)
+Solution: Lock the text while evaluating 'completefunc'.
+Files: src/insexpand.c, src/globals.h, src/edit.c, src/ex_getln.c,
+ src/undo.c, src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
+ src/testdir/test_gf.vim, src/testdir/test_popup.vim,
+ src/testdir/test_ex_mode.vim, runtime/doc/insert.txt
+
+Patch 8.2.0615
+Problem: Regexp benchmark test is old style.
+Solution: Make it a new style test. Fix using a NULL list. Add more tests.
+ (Yegappan Lakshmanan, closes #5963)
+Files: src/evalbuffer.c, src/testdir/Make_dos.mak,
+ src/testdir/Make_ming.mak, src/testdir/Makefile,
+ src/testdir/bench_re_freeze.in, src/testdir/bench_re_freeze.vim,
+ src/testdir/test_autocmd.vim, src/testdir/test_bench_regexp.vim,
+ src/testdir/test_blob.vim, src/testdir/test_bufline.vim,
+ src/testdir/test_channel.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_functions.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_popupwin.vim, src/testdir/test_prompt_buffer.vim,
+ src/testdir/test_tagjump.vim, src/testdir/test_window_cmd.vim
+
+Patch 8.2.0616
+Problem: Build error when disabling the diff feature.
+Solution: Move parenthesis outside of #ifdef. (Tom Ryder)
+Files: src/drawline.c
+
+Patch 8.2.0617
+Problem: New error check triggers in Swedish menu.
+Solution: Insert backslash. (Mats Tegner, closes #5966)
+Files: runtime/lang/menu_sv_se.latin1.vim
+
+Patch 8.2.0618
+Problem: Echoing a null list results in no output. (Yegappan Lakshmanan)
+Solution: Return "[]" instead of NULL in echo_string_core().
+Files: src/eval.c, src/testdir/test_messages.vim
+
+Patch 8.2.0619
+Problem: Null dict is not handled like an empty dict.
+Solution: Fix the code and add tests. (Yegappan Lakshmanan, closes #5968)
+Files: src/dict.c, src/eval.c, src/testdir/test_blob.vim,
+ src/testdir/test_expr.vim, src/testdir/test_filter_map.vim,
+ src/testdir/test_let.vim, src/testdir/test_listdict.vim,
+ src/testdir/test_search.vim, src/testdir/test_unlet.vim,
+ src/testdir/test_usercommands.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.0620
+Problem: Error in menu translations.
+Solution: Insert a backslash before a space.
+Files: runtime/lang/menu_it_it.latin1.vim,
+ runtime/lang/menu_chinese_gb.936.vim
+
+Patch 8.2.0621
+Problem: After running tests asan files may remain.
+Solution: Clean up asan files with "make testclean".
+Files: src/testdir/Makefile, src/Makefile
+
+Patch 8.2.0622
+Problem: Haiku: GUI does not compile.
+Solution: Various fixes. (Emir Sarı, closes #5961)
+Files: Filelist, README.md, READMEdir/README_haiku.txt,
+ runtime/doc/os_haiku.txt, src/Makefile, src/beval.h,
+ src/gui_haiku.cc, src/proto/gui_haiku.pro
+
+Patch 8.2.0623
+Problem: Typo in test comment. (Christ van Willegen)
+Solution: Avoid mixing up a data structure with a body part.
+Files: src/testdir/test_listdict.vim
+
+Patch 8.2.0624
+Problem: Vim9: no check for space before #comment.
+Solution: Add space checks. Fix :throw with double quoted string.
+Files: src/usercmd.c, src/userfunc.c, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0625
+Problem: Vim9: confusing error when calling unknown function.
+Solution: Give error while compiling.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.0626
+Problem: Vim9: wrong syntax of function in Vim9 script.
+Solution: Give error for missing space. Implement :echomsg and :echoerr.
+ (closes #5670)
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/userfunc.c,
+ src/eval.c, src/globals.h, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0627
+Problem: Vim9: error message does not work. (Yegappan Lakshmanan)
+Solution: Swap lines.
+Files: src/userfunc.c
+
+Patch 8.2.0628
+Problem: Error in menu translations.
+Solution: Insert a backslash before a space in one more file. (Shun Bai,
+ Emir Sarı)
+Files: runtime/lang/menu_zh_cn.utf-8.vim,
+ runtime/lang/menu_ca_es.latin1.vim,
+ runtime/lang/menu_cs_cz.iso_8859-2.vim,
+ runtime/lang/menu_cs_cz.utf-8.vim,
+ runtime/lang/menu_czech_czech_republic.1250.vim,
+ runtime/lang/menu_czech_czech_republic.ascii.vim,
+ runtime/lang/menu_da.utf-8.vim,
+ runtime/lang/menu_fi_fi.latin1.vim,
+ runtime/lang/menu_hu_hu.iso_8859-2.vim,
+ runtime/lang/menu_hu_hu.utf-8.vim,
+ runtime/lang/menu_is_is.latin1.vim,
+ runtime/lang/menu_no_no.latin1.vim, runtime/lang/menu_pt_br.vim,
+ runtime/lang/menu_pt_pt.vim,
+ runtime/lang/menu_sk_sk.iso_8859-2.vim,
+ runtime/lang/menu_sl_si.latin2.vim,
+ runtime/lang/menu_slovak_slovak_republic.1250.vim,
+ runtime/lang/menu_tr_tr.cp1254.vim,
+ runtime/lang/menu_tr_tr.iso_8859-9.vim,
+ runtime/lang/menu_tr_tr.utf-8.vim, runtime/lang/menu_vi_vn.vim
+
+Patch 8.2.0629
+Problem: Setting a boolean option to v:false does not work.
+Solution: Do not use the string representation of the value. (Christian
+ Brabandt, closes #5974)
+Files: src/evalvars.c, src/testdir/test_options.vim
+
+Patch 8.2.0630
+Problem: "make tags" does not cover Haiku GUI file.
+Solution: Add *.cc files.
+Files: src/Make_all.mak
+
+Patch 8.2.0631
+Problem: Haiku file formatted with wrong tabstop.
+Solution: Use normal tabstop. Fix white space.
+Files: src/gui_haiku.cc
+
+Patch 8.2.0632
+Problem: Crash when using Haiku.
+Solution: Lock the screen. (closes #5975, closes #5973)
+Files: src/screen.c
+
+Patch 8.2.0633
+Problem: Crash when using null partial in filter().
+Solution: Fix crash. Add more tests. (Yegappan Lakshmanan, closes #5976)
+Files: src/eval.c, src/testdir/test_blob.vim,
+ src/testdir/test_channel.vim, src/testdir/test_eval_stuff.vim,
+ src/testdir/test_execute_func.vim, src/testdir/test_expr.vim,
+ src/testdir/test_filter_map.vim, src/testdir/test_fold.vim,
+ src/testdir/test_functions.vim, src/testdir/test_let.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_partial.vim,
+ src/testdir/test_usercommands.vim
+
+Patch 8.2.0634
+Problem: Crash with null partial and blob.
+Solution: Check for NULL pointer. Add more tests. (Yegappan Lakshmanan,
+ closes #5984)
+Files: src/eval.c, src/list.c, src/testdir/test_blob.vim,
+ src/testdir/test_bufwintabinfo.vim, src/testdir/test_cd.vim,
+ src/testdir/test_channel.vim, src/testdir/test_cursor_func.vim,
+ src/testdir/test_eval_stuff.vim, src/testdir/test_expr.vim,
+ src/testdir/test_filter_map.vim, src/testdir/test_fnamemodify.vim,
+ src/testdir/test_functions.vim, src/testdir/test_getvar.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_messages.vim,
+ src/testdir/test_partial.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_tabpage.vim, src/testdir/test_vimscript.vim,
+ src/testdir/test_window_cmd.vim, src/testdir/test_window_id.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.0635
+Problem: When using 256 colors DarkYellow does not show expected color.
+Solution: Use color 3 instead of 130. (Romain Lafourcade, closes #5985)
+Files: src/highlight.c
+
+Patch 8.2.0636
+Problem: :messages does not show the maintainer when $LANG is unset.
+Solution: Call get_mess_lang() if available. (closes #5978)
+Files: src/message.c
+
+Patch 8.2.0637
+Problem: Incsearch highlighting does not work for ":sort!".
+Solution: Skip over the exclamation point. (closes #5983)
+Files: src/ex_getln.c, src/testdir/test_search.vim,
+ src/testdir/dumps/Test_incsearch_sort_02.dump
+
+Patch 8.2.0638
+Problem: MS-Windows: messages test fails.
+Solution: Clear environment variables.
+Files: src/testdir/test_messages.vim
+
+Patch 8.2.0639
+Problem: MS-Windows: messages test still fails.
+Solution: Filter out the maintainer message.
+Files: src/testdir/test_messages.vim
+
+Patch 8.2.0640
+Problem: Vim9: expanding `=expr` does not work.
+Solution: Find wildcards in not compiled commands. Reorganize test files.
+Files: Filelist, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/vim9.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim,
+ src/testdir/Make_all.mak
+
+Patch 8.2.0641
+Problem: Vim9: `=expr` not expanded in :hardcopy and "syntax include".
+Solution: Add the EX_EXPAND flag. Expend "syntax include".
+Files: src/ex_cmds.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.0642
+Problem: Vim9: using invalid index.
+Solution: Check index for being valid. Fix memory leak.
+Files: src/vim9compile.c, src/clientserver.c
+
+Patch 8.2.0643 (after 8.2.0635)
+Problem: Terminal uses brown instead of dark yellow. (Romain Lafourcade)
+Solution: Use color index 3 instead of 130. (closes #5993)
+Files: src/terminal.c
+
+Patch 8.2.0644
+Problem: Insufficient testing for invalid function arguments.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5988)
+Files: runtime/doc/eval.txt, src/testdir/test_bufline.vim,
+ src/testdir/test_channel.vim, src/testdir/test_clientserver.vim,
+ src/testdir/test_expr.vim, src/testdir/test_functions.vim,
+ src/testdir/test_listener.vim, src/testdir/test_match.vim,
+ src/testdir/test_menu.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_registers.vim, src/testdir/test_reltime.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_textprop.vim,
+ src/testdir/test_window_cmd.vim, src/testdir/test_window_id.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.0645
+Problem: MS-Windows terminal: CTRL-C does not get to child job.
+Solution: Remove CREATE_NEW_PROCESS_GROUP from CreateProcessW(). (Nobuhiro
+ Takasaki, closes #5987)
+Files: src/terminal.c
+
+Patch 8.2.0646
+Problem: t_Co uses the value of $COLORS in the GUI. (Masato Nishihata)
+Solution: Ignore $COLORS for the GUI. (closes #5992)
+Files: src/os_unix.c, src/term.c
+
+Patch 8.2.0647
+Problem: MS-Windows: repeat count for events was not used.
+Solution: Check the repeat count. (Nobuhiro Takasaki, closes #5989)
+Files: src/os_win32.c
+
+Patch 8.2.0648
+Problem: Semicolon search does not work in first line.
+Solution: Allow the cursor to be in line zero. (Christian Brabandt,
+ closes #5996)
+Files: src/ex_docmd.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.0649
+Problem: Undo problem when an InsertLeave autocommand resets undo. (Kutsan
+ Kaplan)
+Solution: Do not create a new undo block when leaving Insert mode.
+Files: src/edit.c, src/testdir/test_edit.vim
+
+Patch 8.2.0650
+Problem: Vim9: script function can be deleted.
+Solution: Disallow deleting script function. Delete functions when sourcing
+ a script again.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
+ src/vim9compile.c, src/vim9execute.c, src/vim9script.c,
+ src/scriptfile.c, src/testing.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0651
+Problem: Old style benchmark test still in list of distributed files.
+Solution: Remove the files from the list.
+Files: Filelist
+
+Patch 8.2.0652 (after 8.2.0650)
+Problem: Compiler warning for char conversion.
+Solution: Use unsigned char buffer.
+Files: src/userfunc.c
+
+Patch 8.2.0653 (after 8.2.0650)
+Problem: using uninitialized pointer.
+Solution: Move assignment up. (John Marriott)
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0654
+Problem: Building with Python fails.
+Solution: Add missing argument.
+Files: src/if_py_both.h
+
+Patch 8.2.0655
+Problem: Search code not sufficiently tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #5999)
+Files: src/testdir/test_charsearch.vim, src/testdir/test_gn.vim,
+ src/testdir/test_goto.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_normal.vim, src/testdir/test_search.vim,
+ src/testdir/test_textformat.vim, src/testdir/test_textobjects.vim,
+ src/testdir/test_visual.vim
+
+Patch 8.2.0656
+Problem: MS-Windows: redrawing right screen edge may not be needed.
+Solution: Check the build version. (Nobuhiro Takasaki, closes #6002)
+Files: src/drawscreen.c, src/os_win32.c, src/proto/os_win32.pro
+
+Patch 8.2.0657
+Problem: Vim9: no check if called variable is a FuncRef.
+Solution: Add a type check.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0658 (after 8.2.0646)
+Problem: HP-UX build fails when setenv() is not defined.
+Solution: Change "colors" to "t_colors". (John Marriott)
+Files: src/os_unix.c
+
+Patch 8.2.0659
+Problem: Vim9: no test for equal func type.
+Solution: Add a test. Improve type check.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0660
+Problem: The search.c file is a bit big.
+Solution: Split off the text object code to a separate file. (Yegappan
+ Lakshmanan, closes #6007)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/proto.h, src/proto/search.pro, src/proto/textobject.pro,
+ src/search.c, src/textobject.c
+
+Patch 8.2.0661
+Problem: Eval test is still old style.
+Solution: Change into new style tests. (Yegappan Lakshmanan, closes #6009)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test_eval.in, src/testdir/test_eval.ok,
+ src/testdir/test_eval_stuff.vim
+
+Patch 8.2.0662
+Problem: Cannot use input() in a channel callback.
+Solution: Reset vgetc_busy. (closes #6010)
+Files: src/globals.h, src/ex_getln.c, src/evalfunc.c,
+ src/testdir/test_channel.vim
+
+Patch 8.2.0663
+Problem: Not all systemd temp files are recognized.
+Solution: Add two more patterns. (Jamie Macdonald, closes #6003)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0664
+Problem: Included undesired changes in Makefile.
+Solution: Revert the changes.
+Files: src/Makefile
+
+Patch 8.2.0665
+Problem: Wrongly assuming Python executable is called "python".
+Solution: Use detected python command. (Ken Takata, closes #6016)
+ Also use CheckFunction if possible.
+Files: src/testdir/test_terminal.vim, src/testdir/check.vim
+
+Patch 8.2.0666
+Problem: Ruby test fails on MS-Windows.
+Solution: Remove the "maintainer" line. (Ken Takata, closes #6015)
+Files: src/testdir/shared.vim, src/testdir/test_messages.vim,
+ src/testdir/test_ruby.vim
+
+Patch 8.2.0667
+Problem: Cannot install Haiku version from source.
+Solution: Update Makefile and rdef file. (Emir Sarı, closes #6013)
+Files: Filelist, READMEdir/README_haiku.txt, runtime/doc/os_haiku.txt,
+ src/Makefile, src/os_haiku.rdef.in, src/os_haiku.rdef
+
+Patch 8.2.0668
+Problem: Compiler warning for int/size_t usage.
+Solution: Change "int" to "size_t". (Mike Williams)
+Files: src/vim9execute.c
+
+Patch 8.2.0669
+Problem: MS-Windows: display in VTP is a bit slow.
+Solution: Optimize the code. (Nobuhiro Takasaki, closes #6014)
+Files: src/os_win32.c, src/screen.c
+
+Patch 8.2.0670
+Problem: Cannot change window when evaluating 'completefunc'.
+Solution: Make a difference between not changing text or buffers and also
+ not changing window.
+Files: src/ex_getln.c, src/beval.c, src/change.c, src/edit.c, src/eval.c,
+ src/ex_docmd.c, src/insexpand.c, src/globals.h, src/indent.c,
+ src/map.c, src/window.c, src/proto/ex_getln.pro, src/register.c,
+ src/undo.c, src/testdir/test_edit.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_popup.vim
+
+Patch 8.2.0671
+Problem: Haiku: compiler warnings.
+Solution: Avoid the warnings. Drop display_errors() copy. (Emir Sarı,
+ closes #6018)
+Files: .gitignore, src/gui.c, src/gui_haiku.cc
+
+Patch 8.2.0672
+Problem: Heredoc in scripts does not accept lower case marker.
+Solution: Allow lower case only in non-Vim scripts. (Ken Takata,
+ closes #6019)
+Files: src/evalvars.c, src/testdir/test_lua.vim,
+ src/testdir/test_perl.vim, src/testdir/test_python2.vim,
+ src/testdir/test_python3.vim, src/testdir/test_pyx2.vim,
+ src/testdir/test_pyx3.vim, src/testdir/test_ruby.vim
+
+Patch 8.2.0673
+Problem: Cannot build Haiku in shadow directory.
+Solution: Add symlink. (Ozaki Kiichi, closes #6023)
+Files: src/Makefile
+
+Patch 8.2.0674
+Problem: Some source files are too big.
+Solution: Move text formatting functions to a new file. (Yegappan
+ Lakshmanan, closes #6021)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/edit.c, src/getchar.c, src/ops.c, src/option.c, src/proto.h,
+ src/proto/edit.pro, src/proto/getchar.pro, src/proto/ops.pro,
+ src/proto/option.pro, src/proto/textformat.pro, src/textformat.c
+
+Patch 8.2.0675
+Problem: Vim9: no support for closures.
+Solution: Do not re-use stack entries.
+Files: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/evalvars.c, src/proto/evalvars.pro
+
+Patch 8.2.0676
+Problem: Pattern in list of distributed files does not match.
+Solution: Drop "testdir/test_[a-z]*.ok". Add CI sed files.
+Files: Filelist
+
+Patch 8.2.0677
+Problem: Vim9: no support for closures.
+Solution: Find variables in the outer function scope, so long as the scope
+ exists.
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
+ src/vim9execute.c, src/structs.h, src/vim9.h,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.0678
+Problem: Rare crash for popup menu.
+Solution: Check for NULL pointer. (Nobuhiro Takasaki, closes #6027)
+Files: src/popupmenu.c
+
+Patch 8.2.0679
+Problem: Vim9: incomplete support for closures.
+Solution: At the end of a function copy arguments and local variables if
+ they are still used by a referenced closure.
+Files: src/structs.h, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.0680
+Problem: PTYGROUP and PTYMODE are unused.
+Solution: Remove from autoconf. (closes #6024)
+Files: src/configure.ac, src/auto/configure, src/config.h.in
+
+Patch 8.2.0681
+Problem: Pattern for 'hlsearch' highlighting may leak. (Dominique Pellé)
+Solution: Call end_search_hl() to make sure the previous pattern is freed.
+ (closes #6028)
+Files: src/screen.c
+
+Patch 8.2.0682
+Problem: Vim9: parsing function argument type can get stuck.
+Solution: Bail out when not making progress.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0683
+Problem: Vim9: parsing type does not always work.
+Solution: Handle func type without return value. Test more closures.
+ Fix type check offset. Fix garbage collection.
+Files: src/vim9compile.c, src/vim9execute.c, src/proto/vim9execute.pro,
+ src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0684
+Problem: Vim9: memory leak when using lambda.
+Solution: Move the funccal context to the partial. Free the function when
+ exiting.
+Files: src/vim9.h, src/structs.h, src/vim9execute.c, src/userfunc.c,
+ src/eval.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0685 (after 8.2.0684)
+Problem: Build failure.
+Solution: Include missing changes.
+Files: src/vim9compile.c
+
+Patch 8.2.0686
+Problem: Formatoptions not sufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6031)
+Files: src/testdir/test_normal.vim, src/testdir/test_textformat.vim
+
+Patch 8.2.0687
+Problem: Some tests do not work on FreeBSD.
+Solution: Enable modeline. Use WaitFor() in more cases. (Ozaki Kiichi,
+ closes #6036)
+Files: src/testdir/test_quickfix.vim, src/testdir/test_terminal.vim
+
+Patch 8.2.0688
+Problem: Output clobbered if setting 'verbose' to see shell commands.
+Solution: Only output "Searching for" when 'verbose' is 11 or higher.
+Files: src/scriptfile.c, runtime/doc/options.txt
+
+Patch 8.2.0689
+Problem: When using getaddrinfo() the error message is unclear.
+Solution: Use gai_strerror() to get the message. (Ozaki Kiichi,
+ closes #6034)
+Files: src/channel.c
+
+Patch 8.2.0690
+Problem: Line number of option set by modeline is wrong.
+Solution: Do not double the line number. (Ozaki Kiichi, closes #6035)
+Files: src/option.c, src/testdir/test_modeline.vim
+
+Patch 8.2.0691
+Problem: Startup test fails.
+Solution: Adjust expected output from -V2 argument.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.0692
+Problem: Startup test fails on MS-Windows.
+Solution: Allow for any path.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.0693
+Problem: Closure using argument not tested.
+Solution: Add a test, make it work.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0694
+Problem: Haiku: channel and terminal do not work.
+Solution: Close files when the job has finished. (Ozaki Kiichi,
+ closes #6039)
+Files: src/channel.c, src/getchar.c, src/gui_haiku.cc, src/misc1.c
+
+Patch 8.2.0695
+Problem: Vim9: cannot define a function inside a function.
+Solution: Initial support for :def inside :def.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/vim9compile.c,
+ src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0696
+Problem: Vim9: nested function does not work properly
+Solution: Create a function reference. Check argument count.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.0697
+Problem: Vim9: memory leak when using nested function.
+Solution: Unreference function when deleting instructions. Adjust reference
+ count for local variables.
+Files: src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.0698
+Problem: Insert mode completion not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6041)
+Files: src/testdir/test_edit.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_textformat.vim
+
+Patch 8.2.0699
+Problem: Vim9: not all errors tested.
+Solution: Add test for deleted function. Bail out on first error.
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/vim9.vim
+
+Patch 8.2.0700
+Problem: Vim9: converting error message to exception not tested.
+Solution: Test exception from error. Do not continue after :echoerr.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0701
+Problem: Vim9 test fails without job feature.
+Solution: Add feature check.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0702
+Problem: Running channel tests may leave running process behind.
+Solution: Make Python client exit when running into EOF. (Kurtis Rader,
+ part of #6046)
+Files: src/testdir/test_channel_pipe.py
+
+Patch 8.2.0703
+Problem: Vim9: closure cannot store value in outer context.
+Solution: Make storing value in outer context work. Make :disassemble
+ accept a function reference.
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/eval.c,
+ src/structs.h, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.0704
+Problem: Vim9: memory leak in disassemble test.
+Solution: Decrement refcount when creating funccal.
+Files: src/vim9execute.c
+
+Patch 8.2.0705
+Problem: Indent tests don't run on CI for FreeBSD.
+Solution: Set modeline. (Ozaki Kiichi, closes #6048)
+Files: .cirrus.yml, runtime/indent/testdir/runtest.vim
+
+Patch 8.2.0706
+Problem: Vim9: using assert_fails() causes function to finish.
+Solution: Check did_emsg instead of called_emsg.
+Files: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0707
+Problem: Vim9 function test fails.
+Solution: Adjust expected error code.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.0708
+Problem: Vim9: constant expressions are not simplified.
+Solution: Simplify string concatenation.
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0709
+Problem: MS-Windows: compiler warning for int vs size_t.
+Solution: Add type cast. (Mike Williams)
+Files: src/channel.c
+
+Patch 8.2.0710
+Problem: Netbeans test sometimes fails.
+Solution: Mark any test using an external command as flaky.
+Files: src/testdir/shared.vim
+
+Patch 8.2.0711
+Problem: With a long running Vim the temp directory might be cleared on
+ some systems.
+Solution: Lock the temp directory. (closes #6044)
+Files: src/config.h.in, src/configure.ac, src/auto/configure,
+ src/fileio.c, src/globals.h, src/os_unix.h
+
+Patch 8.2.0712
+Problem: Various code not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6049)
+Files: src/testdir/test_functions.vim, src/testdir/test_options.vim,
+ src/testdir/test_system.vim, src/testdir/test_termcodes.vim
+
+Patch 8.2.0713
+Problem: The pam_environment file is not recognized.
+Solution: Add a filetype pattern for pamenv. (closes #6051)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0714
+Problem: Vim9: handling constant expression does not scale.
+Solution: Use another solution, passing typval_T.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0715
+Problem: Vim9: leaking memory.
+Solution: Free strings after concatenating them.
+Files: src/vim9compile.c
+
+Patch 8.2.0716
+Problem: Vim9: another memory leak.
+Solution: Clear typval when failing.
+Files: src/vim9compile.c
+
+Patch 8.2.0717
+Problem: Vim9: postponed constant expressions does not scale.
+Solution: Add a structure to pass around postponed constants.
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0718
+Problem: Gcc warning for returning pointer to local variable. (John
+ Marriott)
+Solution: Return another pointer.
+Files: src/evalvars.c
+
+Patch 8.2.0719
+Problem: Vim9: more expressions can be evaluated at compile time
+Solution: Recognize has('name').
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0720
+Problem: Occasional exit when encountering an X error. (Manfred Lotz)
+Solution: On an X error do not exit, do preserve files.
+Files: src/os_unix.c
+
+Patch 8.2.0721
+Problem: Vim9: leaking memory when skipping.
+Solution: Disable skipping in generate_ppconst().
+Files: src/vim9compile.c
+
+Patch 8.2.0722
+Problem: Vim9: not handling constant expression for elseif.
+Solution: Use postponed constants. Delete the code for evaluating a
+ constant expression.
+Files: src/vim9compile.c
+
+Patch 8.2.0723
+Problem: Vim9: nested constant expression not evaluated compile time.
+Solution: Use compile_expr1() for parenthesis.
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0724
+Problem: Vim9: appending to buffer/window/tab variable not tested
+Solution: Add a test.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0725
+Problem: Vim9: cannot call a function declared later in Vim9 script.
+Solution: Make two passes through the script file.
+Files: src/scriptfile.c, src/proto/scriptfile.pro, src/vim9script.c,
+ src/vim9compile.c, src/vim9execute.c, src/proto/vim9compile.pro,
+ src/userfunc.c, src/proto/userfunc.pro, src/evalvars.c,
+ src/proto/evalvars.pro, src/vim.h,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0726
+Problem: Vim9: leaking memory when calling not compiled :def function.
+Solution: Check if function is compiled earlier.
+Files: src/vim9execute.c
+
+Patch 8.2.0727
+Problem: MS-Windows: new gcc compiler does not support scanf format.
+Solution: Use "%ll" instead of "%I". (Ken Takata)
+Files: src/vim.h
+
+Patch 8.2.0728
+Problem: Messages about a deadly signal are not left aligned.
+Solution: Output a CR before the NL. (Dominique Pellé, #6055)
+Files: src/misc1.c, src/os_unix.c
+
+Patch 8.2.0729
+Problem: Vim9: When reloading a script variables are not cleared.
+Solution: When sourcing a script again clear all script-local variables.
+Files: src/dict.c, src/proto/dict.pro, src/scriptfile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0730
+Problem: Vim9: Assignment to dict member does not work.
+Solution: Parse dict assignment. Implement getting dict member.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/globals.h,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0731
+Problem: Vim9: parsing declarations continues after :finish.
+Solution: Bail out when encountering :finish.
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0732
+Problem: Vim9: storing value in dict messes up stack.
+Solution: Correct item count of stack.
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.0733
+Problem: Vim9: assigning to dict or list argument does not work.
+Solution: Recognize an argument as assignment target.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0734
+Problem: Vim9: leaking memory when using :finish.
+Solution: Do not check for next line in third pass.
+Files: src/scriptfile.c
+
+Patch 8.2.0735
+Problem: Vim9: using uninitialized memory.
+Solution: Clear the arg_lvar field.
+Files: src/vim9compile.c
+
+Patch 8.2.0736
+Problem: Some files not recognized as pamenv.
+Solution: Add pam_inv.conf. (closes #6065)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0737
+Problem: When shell doesn't support CTRL-Z Vim still handles it.
+Solution: Ignore the STOP signal if it was ignored on startup.
+ (Kurtis Rader, closes #5990, closes #6058)
+Files: src/os_unix.c
+
+Patch 8.2.0738
+Problem: Mouse handling in a terminal window not well tested.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6052)
+Files: src/testdir/term_util.vim, src/testdir/test_gui.vim,
+ src/testdir/test_modeless.vim, src/testdir/test_terminal.vim
+
+Patch 8.2.0739
+Problem: Incomplete profiling when exiting because of a deadly signal.
+Solution: Call __gcov_flush() if available.
+Files: src/os_unix.c, src/Makefile, .travis.yml
+
+Patch 8.2.0740
+Problem: Minor message mistakes.
+Solution: Change vim to Vim and other fixes.
+Files: src/if_py_both.h, src/if_tcl.c, src/main.c
+
+Patch 8.2.0741
+Problem: Python tests fail because of changed message.
+Solution: Adjust the expected messages (Dominique Pellé, closes #6066)
+Files: src/testdir/test86.ok, src/testdir/test87.ok
+
+Patch 8.2.0742
+Problem: Handling of a TERM signal not tested.
+Solution: Add a test for SIGTERM. (Dominique Pellé, closes #6055)
+Files: src/testdir/test_signals.vim
+
+Patch 8.2.0743
+Problem: Can move to another buffer from a terminal in popup window.
+Solution: Do not allow "gf" or editing a file. (closes #6072)
+Files: src/normal.c, src/ex_cmds.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.0744
+Problem: The name vim is not capitalized in a message.
+Solution: Use "Vim" instead of "vim".
+Files: src/main.c
+
+Patch 8.2.0745
+Problem: Crash on exit when not all popups are closed.
+Solution: Close popups when freeing all memory. Disable checking for popup
+ when editing a file for now.
+Files: src/misc2.c, src/ex_cmds.c
+
+Patch 8.2.0746
+Problem: popup_clear() hangs when a popup can't be closed.
+Solution: Bail out when a popup can't be closed.
+Files: src/popupwin.c, src/proto/popupwin.pro
+
+Patch 8.2.0747
+Problem: Cannot forcefully close all popups.
+Solution: Add the "force" argument to popup_clear(). Use it after running a
+ test. Put back the check for a popup when editing a file.
+Files: runtime/doc/popup.txt, src/evalfunc.c, src/popupwin.c,
+ src/proto/popupwin.pro, src/tag.c, src/window.c, src/misc2.c,
+ src/ex_cmds.c, src/channel.c, src/testdir/runtest.vim,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.0748
+Problem: Cannot get a list of all popups.
+Solution: Add popup_list(). Use it in the test runner.
+Files: runtime/doc/eval.txt, runtime/doc/popup.txt, src/popupwin.c,
+ src/proto/popupwin.pro, src/evalfunc.c,
+ src/testdir/test_popupwin.vim, src/testdir/runtest.vim
+
+Patch 8.2.0749
+Problem: TERM signal test fails on FreeBSD.
+Solution: Do not check the messages, the may appear anywhere. (Dominique
+ Pellé, closes #6075)
+Files: src/testdir/test_signals.vim
+
+Patch 8.2.0750
+Problem: Netbeans test is a bit flaky.
+Solution: Allow for standard sign to be defined. Use WaitForAssert().
+Files: src/testdir/test_netbeans.vim
+
+Patch 8.2.0751
+Problem: Vim9: performance can be improved.
+Solution: Don't call break. Inline check for list materialize. Make an
+ inline version of ga_grow().
+Files: src/macros.h, src/evalfunc.c, src/misc2.c,
+ src/proto/misc2.pro, src/channel.c, src/eval.c, src/evalbuffer.c,
+ src/evalvars.c, src/filepath.c, src/highlight.c, src/insexpand.c,
+ src/json.c, src/list.c, src/popupmenu.c, src/popupwin.c,
+ src/userfunc.c, src/if_py_both.h
+
+Patch 8.2.0752
+Problem: Terminal in popup window test is a bit flaky.
+Solution: Wait for shell job status to be "run". Mark as flaky test.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.0753
+Problem: Vim9: expressions are evaluated in the discovery phase.
+Solution: Bail out if an expression is not a constant. Require a type for
+ declared constants.
+Files: src/vim.h, src/evalvars.c, src/eval.c, src/ex_eval.c,
+ src/evalfunc.c, src/userfunc.c, src/dict.c, src/list.c,
+ src/vim9compile.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0754
+Problem: Vim9: No test for forward declaration.
+Solution: Add a test.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0755
+Problem: Vim9: No error when variable initializer is not a constant.
+Solution: Return FAIL when trying to get a variable value. Do not execute a
+ script when an error is detected in the first or second phase.
+Files: src/eval.c, src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0756 (after 8.2.0249)
+Problem: MS-Windows: still a compiler warning.
+Solution: Move flag to another place in the Makefile. (Ken Takata,
+ closes #6083)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0757
+Problem: Vim9: no test for MEMBER instruction.
+Solution: Add a test. Make matches stricter.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0758
+Problem: Vim9: no test for STORELIST and STOREDICT.
+Solution: Add a test. Make matches stricter.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.0759 (after 8.2.0751)
+Problem: Vim9: missing changes for performance improvements
+Solution: Use GA_GROW(). Don't call breakcheck so often.
+Files: src/vim9execute.c
+
+Patch 8.2.0760
+Problem: Vim9: dict member errors not tested.
+Solution: Delete unreachable error. Add tests.
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0761
+Problem: Vim9: instructions not tested
+Solution: Use a variable instead of a constant.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0762
+Problem: Buffer is not considered modified after setting crypt key.
+Solution: Set the modified flag. (Christian Brabandt, closes #6082)
+Files: src/optionstr.c, src/testdir/test_crypt.vim
+
+Patch 8.2.0763
+Problem: GUI test fails without the terminal feature.
+Solution: Check the terminal feature is supported. (Ken Takata,
+ closes #6084)
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.0764
+Problem: Vim9: assigning to option not fully tested.
+Solution: Add more test cases. Allow using any type for assignment.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0765
+Problem: In the GUI can't use all the modifiers. (Andri Möll)
+Solution: Do not apply Alt/Meta early, do it later like with the terminal.
+ Avoid the Motif test from crashing.
+Files: src/gui_gtk_x11.c, src/gui_x11.c, src/gui_mac.c, src/gui_w32.c,
+ src/gui_motif.c
+
+Patch 8.2.0766
+Problem: Display error when using 'number' and 'breakindent'.
+Solution: Adjust extra spaces in the first row. (Ken Takata, closes #6089,
+ closes #5986)
+Files: src/drawline.c, src/testdir/test_breakindent.vim
+
+Patch 8.2.0767
+Problem: ModifyOtherKeys active when using a shell command in autocmd.
+Solution: Output T_CTE when going to cooked mode. (closes 5617)
+Files: src/term.c
+
+Patch 8.2.0768
+Problem: Vim9: memory leak in script test.
+Solution: Clear typval before giving an error message.
+Files: src/vim9execute.c
+
+Patch 8.2.0769
+Problem: VimLeavePre not triggered when Vim is terminated.
+Solution: Unblock autocommands.
+Files: src/main.c, src/testdir/test_signals.vim
+
+Patch 8.2.0770
+Problem: Cannot map CTRL-B when using the GUI.
+Solution: Reset the CTRL modifier when used. (closes #6092)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.0771
+Problem: Vim9: cannot call a compiled closure from not compiled code.
+Solution: Pass funcexe to call_user_func().
+Files: src/userfunc.c, src/vim9execute.c, src/proto/vim9execute.pro,
+ src/eval.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.0772
+Problem: Vim9: some variable initializations not tested.
+Solution: Add a few more tests
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0773
+Problem: Switching to raw mode every time ":" is used.
+Solution: When executing a shell set cur_tmode to TMODE_UNKNOWN, so that the
+ next time TMODE_RAW is used it is set, but not every time.
+Files: src/term.h, src/os_unix.c, src/term.c, src/os_amiga.c,
+ src/os_win32.c
+
+Patch 8.2.0774
+Problem: t_TI and t_TE are output when using 'visualbell'. (Dominique
+ Pellé)
+Solution: Do not change the terminal mode for a short sleep. Do not output
+ t_TI and t_TE when switching to/from TMODE_SLEEP. Make tmode an
+ enum.
+Files: src/os_unix.c, src/proto/os_unix.pro, src/os_amiga.c,
+ src/proto/os_amiga.pro, src/os_mswin.c, src/proto/os_mswin.pro,
+ src/os_vms.c, src/proto/os_vms.pro, src/os_win32.c,
+ src/proto/os_win32.pro, src/term.c, src/term.h, src/globals.h
+
+Patch 8.2.0775
+Problem: Not easy to call a Vim function from Lua.
+Solution: Add vim.call() and vim.fn(). (Prabir Shrestha, closes #6063)
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.0776
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revision 719.
+Files: Filelist, src/libvterm/README, src/libvterm/Makefile,
+ src/libvterm/find-wide-chars.pl, src/libvterm/src/fullwidth.inc,
+ src/libvterm/src/unicode.c
+
+Patch 8.2.0777 (after 8.2.0776)
+Problem: Terminal test fails.
+Solution: Adjust character position for double-wide characters.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0778
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 720 - 723.
+Files: src/libvterm/t/10state_putglyph.test, src/libvterm/Makefile,
+ src/libvterm/t/run-test.pl, src/libvterm/src/state.c,
+ src/libvterm/t/92lp1805050.test
+
+Patch 8.2.0779
+Problem: Tmode_T not used everywhere.
+Solution: Also use tmode_T for settmode().
+Files: src/term.c, src/proto/term.pro
+
+Patch 8.2.0780
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 724 - 726.
+Files: Filelist, src/libvterm/t/40screen_ascii.test,
+ src/libvterm/t/60screen_ascii.test,
+ src/libvterm/t/41screen_unicode.test,
+ src/libvterm/t/61screen_unicode.test,
+ src/libvterm/t/42screen_damage.test,
+ src/libvterm/t/62screen_damage.test,
+ src/libvterm/t/43screen_resize.test,
+ src/libvterm/t/63screen_resize.test,
+ src/libvterm/t/44screen_pen.test,
+ src/libvterm/t/64screen_pen.test,
+ src/libvterm/t/45screen_protect.test,
+ src/libvterm/t/65screen_protect.test,
+ src/libvterm/t/46screen_extent.test,
+ src/libvterm/t/66screen_extent.test,
+ src/libvterm/t/47screen_dbl_wh.test,
+ src/libvterm/t/67screen_dbl_wh.test,
+ src/libvterm/t/48screen_termprops.test,
+ src/libvterm/t/68screen_termprops.test, src/libvterm/t/30pen.test,
+ src/libvterm/t/30state_pen.test, src/libvterm/t/92lp1805050.test,
+ src/libvterm/t/31state_rep.test, src/libvterm/doc/seqs.txt
+
+Patch 8.2.0781 (after 8.2.0775)
+Problem: Compiler warning for not using value in Lua.
+Solution: Add "(void)".
+Files: src/if_lua.c
+
+Patch 8.2.0782
+Problem: Cannot build with Lua on MS-Windows.
+Solution: Add DLL symbol for luaL_Loadstring. (Ken Takata)
+Files: src/if_lua.c
+
+Patch 8.2.0783
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 728 - 729.
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile,
+ src/libvterm/src/keyboard.c, src/libvterm/t/25state_input.test,
+ src/libvterm/t/harness.c, src/libvterm/src/vterm.c,
+ src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/26state_query.test
+
+Patch 8.2.0784
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 730 - 733.
+Files: src/libvterm/src/vterm.c, src/libvterm/src/state.c,
+ src/libvterm/include/vterm.h, src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/harness.c
+
+Patch 8.2.0785
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 734 - 740.
+Files: src/libvterm/include/vterm.h, src/libvterm/src/pen.c,
+ src/libvterm/src/vterm.c, src/libvterm/doc/seqs.txt,
+ src/libvterm/t/30state_pen.test, src/libvterm/t/run-test.pl,
+ src/libvterm/Makefile, src/libvterm/CONTRIBUTING
+
+Patch 8.2.0786
+Problem: Channel test is flaky on FreeBSD.
+Solution: Set the socket TCP_NODELAY option. Adjust expected line count in
+ netbeans test. (Ozaki Kiichi, closes #6097)
+Files: src/testdir/test_channel.py, src/testdir/test_netbeans.vim
+
+Patch 8.2.0787
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 741 - 742.
+Files: Filelist, src/libvterm/src/screen.c
+
+Patch 8.2.0788
+Problem: Memory leak in libvterm.
+Solution: free tmpbuffer.
+Files: src/libvterm/src/vterm.c
+
+Patch 8.2.0789
+Problem: Vim9: expression testing lost coverage using constants.
+Solution: Use a few variables instead of constants.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.0790
+Problem: Vim9: list index not well tested.
+Solution: Add a few more tests.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0791
+Problem: A second popup window with terminal causes trouble.
+Solution: Disallow opening a second terminal-popup window. (closes #6101,
+ closes #6103) Avoid defaulting to an invalid line number.
+Files: runtime/doc/popup.txt, src/popupwin.c, src/ex_docmd.c,
+ src/testdir/test_popupwin.vim, src/testdir/test_terminal.vim
+
+Patch 8.2.0792
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/popupwin.c
+
+Patch 8.2.0793
+Problem: MS-Windows: cannot build GUI with small features. (Michael Soyka)
+Solution: Add #ifdef around use of windowsVersion. (Ken Takata)
+Files: src/os_win32.c
+
+Patch 8.2.0794
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 743 - 747.
+Files: src/libvterm/src/state.c, src/libvterm/src/screen.c,
+ src/libvterm/src/vterm_internal.h, src/libvterm/include/vterm.h,
+ src/libvterm/t/67screen_dbl_wh.test, src/libvterm/t/run-test.pl
+
+Patch 8.2.0795
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 748 - 754.
+Files: src/libvterm/include/vterm.h, src/libvterm/src/screen.c,
+ src/libvterm/src/state.c, src/libvterm/t/32state_flow.test,
+ src/libvterm/t/60screen_ascii.test,
+ src/libvterm/t/62screen_damage.test,
+ src/libvterm/t/63screen_resize.test, src/libvterm/t/harness.c,
+ src/libvterm/t/run-test.pl
+
+Patch 8.2.0796
+Problem: MS-Windows: compiler can't handle C99 construct in libvterm.
+Solution: Change to C90 construct.
+Files: src/libvterm/src/state.c
+
+Patch 8.2.0797
+Problem: MS-Windows: compiler still can't handle C99 construct.
+Solution: Change to C90 construct. (Dominique Pellé, closes #6106)
+Files: src/libvterm/src/state.c
+
+Patch 8.2.0798
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 755 - 758.
+Files: src/libvterm/t/run-test.pl, src/libvterm/src/screen.c,
+ src/libvterm/t/harness.c, src/libvterm/include/vterm.h,
+ src/libvterm/src/parser.c, src/libvterm/src/state.c,
+ src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/02parser.test,
+ src/libvterm/t/18state_termprops.test,
+ src/libvterm/t/29state_fallback.test,
+ src/libvterm/t/68screen_termprops.test, src/terminal.c
+
+Patch 8.2.0799
+Problem: Build fails if snprintf is not available.
+Solution: Use vim_snprintf().
+Files: src/libvterm/src/state.c
+
+Patch 8.2.0800
+Problem: Errors from failing test are unclear.
+Solution: Include text where parsing failed.
+Files: src/json.c, src/testdir/test_json.vim
+
+Patch 8.2.0801
+Problem: Terminal test fails on Mac.
+Solution: Concatenate OSC pieces.
+Files: src/terminal.c
+
+Patch 8.2.0802
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 759 - 762.
+Files: src/terminal.c, src/libvterm/doc/seqs.txt,
+ src/libvterm/include/vterm.h, src/libvterm/src/pen.c,
+ src/libvterm/src/screen.c, src/libvterm/src/state.c,
+ src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/harness.c, src/libvterm/t/12state_scroll.test
+
+Patch 8.2.0803
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revisions 764 - 767
+Files: src/Makefile, src/libvterm/src/parser.c,
+ src/libvterm/src/vterm_internal.h, src/libvterm/t/02parser.test,
+ src/libvterm/t/run-test.pl, src/libvterm/find-wide-chars.pl,
+ src/libvterm/src/fullwidth.inc
+
+Patch 8.2.0804
+Problem: Libvterm code lags behind the upstream version.
+Solution: Include revision 727, but add the index instead of switching
+ between RGB and indexed.
+Files: src/terminal.c, src/term.c, src/libvterm/include/vterm.h,
+ src/libvterm/src/pen.c, src/libvterm/src/screen.c,
+ src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/30state_pen.test,
+ src/libvterm/t/harness.c, src/libvterm/src/state.c,
+ src/libvterm/t/26state_query.test,
+ src/libvterm/t/64screen_pen.test
+
+Patch 8.2.0805
+Problem: Terminal key codes test fails on some systems.
+Solution: Skip keypad 3 and 9. (Yegappan Lakshmanan, closes #6070)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0806
+Problem: using "func!" after vim9script gives confusing error.
+Solution: Give E477. (closes #6107)
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0807
+Problem: Cannot easily restore a mapping.
+Solution: Add mapset().
+Files: runtime/doc/eval.txt, src/map.c, src/proto/map.pro, src/evalfunc.c
+ src/testdir/test_maparg.vim
+
+Patch 8.2.0808
+Problem: Not enough testing for the terminal window.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6069) Fix memory
+ leak.
+Files: src/testdir/test_gui.vim, src/testdir/test_terminal.vim,
+ src/terminal.c
+
+Patch 8.2.0809
+Problem: Build failure with small features. (Tony Mechelynck)
+Solution: Move "expr" inside #ifdef.
+Files: src/map.c
+
+Patch 8.2.0810
+Problem: Error when appending "tagfile" to 'wildoptions'.
+Solution: use flags P_ONECOMMA and P_NODUP. (Dmitri Vereshchagin,
+ closes #6105)
+Files: src/optiondefs.h, src/testdir/test_options.vim
+
+Patch 8.2.0811
+Problem: Terminal keycode test is flaky.
+Solution: Use WaitForAssert()
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.0812
+Problem: mapset() does not properly handle <> notation.
+Solution: Convert <> codes. (closes #6116)
+Files: src/map.c, src/testdir/test_maparg.vim
+
+Patch 8.2.0813
+Problem: libvterm code is slightly different from upstream.
+Solution: Use upstream text to avoid future merge problems. Mainly comment
+ style changes.
+Files: src/libvterm/include/vterm.h, src/libvterm/src/rect.h,
+ src/libvterm/src/utf8.h, src/libvterm/src/vterm_internal.h,
+ src/libvterm/src/encoding.c, src/libvterm/src/keyboard.c,
+ src/libvterm/src/mouse.c, src/libvterm/src/parser.c,
+ src/libvterm/src/pen.c, src/libvterm/src/screen.c,
+ src/libvterm/src/state.c, src/libvterm/src/unicode.c,
+ src/libvterm/src/vterm.c
+
+Patch 8.2.0814
+Problem: Clang warning for implicit conversion.
+Solution: Add type cast. (Dominique Pellé, closes #6124)
+Files: src/evalfunc.c
+
+Patch 8.2.0815
+Problem: maparg() does not provide enough information for mapset().
+Solution: Add "lhsraw" and "lhsrawalt" items. Drop "simplified"
+Files: src/map.c, runtime/doc/eval.txt, src/testdir/test_maparg.vim
+
+Patch 8.2.0816
+Problem: Terminal test fails when compiled with Athena.
+Solution: Do give an error when the GUI is not running. (hint by Dominique
+ Pellé, closes #5928, closes #6132)
+Files: src/globals.h, src/gui.c, src/term.c, src/channel.c,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.0817
+Problem: Not enough memory allocated when converting string with special
+ character.
+Solution: Reserve space for modifier code. (closes #6130)
+Files: src/eval.c, src/testdir/test_functions.vim
+
+Patch 8.2.0818
+Problem: Vim9: using a discovery phase doesn't work well.
+Solution: Remove the discovery phase, instead compile a function only when
+ it is used. Add :defcompile to compile def functions earlier.
+Files: runtime/doc/vim9.txt, src/vim9script.c, src/structs.h,
+ src/userfunc.c, src/proto/userfunc.pro, src/eval.c,
+ src/evalvars.c, src/proto/evalvars.pro, src/vim9compile.c,
+ src/proto/vim9compile.pro, src/vim9execute.c, src/ex_cmds.h,
+ src/ex_docmd.c, src/ex_cmdidxs.h, src/vim.h, src/testdir/vim9.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0819
+Problem: Compiler warning for unused variable.
+Solution: Remove the variable.
+Files: src/evalvars.c
+
+Patch 8.2.0820
+Problem: Vim9: function type isn't set until compiled.
+Solution: Set function type early.
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.0821
+Problem: Vim9: memory leak in expr test.
+Solution: Do not decrement the length of the list of functions if the
+ current function is not at the end.
+Files: src/vim9compile.c
+
+Patch 8.2.0822
+Problem: Vim9: code left over from discovery phase.
+Solution: Remove the dead code.
+Files: src/scriptfile.c, src/proto/scriptfile.pro, src/ex_cmds.h,
+ src/evalvars.c, src/proto/evalvars.pro, src/ex_docmd.c
+
+Patch 8.2.0823
+Problem: Vim9: script reload test is disabled.
+Solution: Compile a function in the context of the script where it was
+ defined. Set execution stack for compiled function. Add a test
+ that an error is reported for the right file/function.
+Files: src/vim9compile.c, src/vim9execute.c, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/userfunc.c, src/globals.h,
+ src/structs.h, src/ex_docmd.c, src/ex_eval.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0824 (after 8.2.0817)
+Problem: Still not enough memory allocated when converting string with
+ special character.
+Solution: Reserve space for expanding K_SPECIAL. (closes #6130)
+Files: src/eval.c, src/testdir/test_functions.vim
+
+Patch 8.2.0825
+Problem: def_function() may return pointer that was freed.
+Solution: Set "fp" to NULL after freeing it.
+Files: src/userfunc.c
+
+Patch 8.2.0826
+Problem: Vim9: crash in :defcompile.
+Solution: Restart the loop after a call to compile_def_function() caused the
+ hash table to resize.
+Files: src/userfunc.c
+
+Patch 8.2.0827
+Problem: Vim9: crash in :defcompile.
+Solution: Fix off-by-one error.
+Files: src/userfunc.c
+
+Patch 8.2.0828
+Problem: Travis: regexp pattern doesn't work everywhere.
+Solution: Use [:blank:] instead of \b. (Ozaki Kiichi, closes #6146)
+Files: .travis.yml, ci/config.mk.clang.sed, ci/config.mk.gcc.sed,
+ ci/config.mk.sed, src/if_ruby.c
+
+Patch 8.2.0829
+Problem: filter() may give misleading error message.
+Solution: Also mention Blob as an allowed argument.
+Files: src/list.c, src/testdir/test_filter_map.vim
+
+Patch 8.2.0830
+Problem: Motif: can't map "!". (Ben Jackson)
+Solution: Remove the shift modifier if it's already included in the key.
+ (closes #6147)
+Files: src/gui_x11.c
+
+Patch 8.2.0831
+Problem: Compiler warnings for integer sizes.
+Solution: Add type casts. (Mike Williams)
+Files: src/libvterm/src/pen.c, src/terminal.c
+
+Patch 8.2.0832
+Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
+Solution: Add initial value.
+Files: src/map.c
+
+Patch 8.2.0833
+Problem: Mapping <C-bslash> doesn't work in the GUI.
+Solution: Reset seenModifyOtherKeys when starting the GUI. (closes #6150)
+Files: src/gui.c
+
+Patch 8.2.0834
+Problem: :drop command in terminal popup causes problems.
+Solution: Check for using a popup window. (closes #6151)
+Files: src/ex_cmds.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.0835
+Problem: Motif: mapping <C-bslash> still doesn't work.
+Solution: Accept CSI for K_SPECIAL. Do not apply CTRL to the character
+ early. (closes #6150)
+Files: src/getchar.c, src/gui_x11.c
+
+Patch 8.2.0836
+Problem: Not all :cdo output is visible.
+Solution: Reset 'shortmess' temporarily. (Yegappan Lakshmanan, closes #6155)
+Files: src/ex_cmds2.c, src/testdir/test_cdo.vim
+
+Patch 8.2.0837
+Problem: Compiler warning for value set but not used.
+Solution: Move variable inside #ifdef.
+Files: src/channel.c
+
+Patch 8.2.0838
+Problem: MS-Windows: compiler warning for uninitialized variables.
+Solution: Initialize variables.
+Files: src/screen.c
+
+Patch 8.2.0839
+Problem: Dropping modifier when putting a character back in typeahead.
+Solution: Add modifier to ins_char_typebuf(). (closes #6158)
+Files: src/getchar.c, src/proto/getchar.pro, src/message.c, src/normal.c,
+ src/terminal.c, src/globals.h, src/testdir/test_messages.vim
+
+Patch 8.2.0840
+Problem: Search match count wrong when only match is in fold.
+Solution: Update search stats when in a closed fold. (Christian Brabandt,
+ closes #6160, closes #6152)
+Files: src/search.c, src/testdir/dumps/Test_searchstat_3.dump,
+ src/testdir/test_search_stat.vim
+
+Patch 8.2.0841
+Problem: 'verbose' value 16 causes duplicate output.
+Solution: Combine levels 15 and 16 into one message. (Christian Brabandt,
+ closes #6153)
+Files: runtime/doc/options.txt, src/ex_docmd.c
+
+Patch 8.2.0842 (after 8.2.0837)
+Problem: MS-Windows: channel tests fail.
+Solution: Adjust #ifdefs. (closes #6162)
+Files: src/channel.c
+
+Patch 8.2.0843
+Problem: Filetype elm not detected.
+Solution: Recognize *.elm files. (closes #6157)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0844
+Problem: Text properties crossing lines not handled correctly.
+Solution: When saving for undo include an extra line when needed and do not
+ adjust properties when undoing. (Axel Forsman, closes #5875)
+Files: src/memline.c, src/proto/memline.pro, src/undo.c, src/structs.h
+
+Patch 8.2.0845
+Problem: Text properties crossing lines not handled correctly.
+Solution: When joining lines merge text properties if possible.
+ (Axel Forsman, closes #5839, closes #5683)
+Files: src/testdir/test_textprop.vim, src/memline.c, src/ops.c,
+ src/proto/textprop.pro, src/textprop.c,
+ src/testdir/dumps/Test_textprop_01.dump
+
+Patch 8.2.0846
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/undo.c
+
+Patch 8.2.0847
+Problem: Typval related code is spread out.
+Solution: Move code to new typval.c file. (Yegappan Lakshmanan, closes #6093)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/eval.c, src/evalfunc.c, src/globals.h, src/proto.h,
+ src/proto/eval.pro, src/proto/evalfunc.pro, src/proto/typval.pro,
+ src/typval.c
+
+Patch 8.2.0848
+Problem: MS-Windows: the Windows terminal code has some flaws.
+Solution: Do not redraw the right edge of the screen. Remove the background
+ color trick. Flush the screen output buffer often. (Nobuhiro
+ Takasaki, #5546)
+Files: src/os_win32.c, src/proto/os_win32.pro, src/term.c
+
+Patch 8.2.0849
+Problem: BeOS code is not maintained and probably unused.
+Solution: Remove the BeOS code. (Emir Sarı, closes #5817)
+Files: Filelist, src/Makefile, src/configure.ac, src/auto/configure,
+ src/evalfunc.c, src/normal.c, src/os_beos.c, src/os_beos.h,
+ src/os_beos.rsrc, src/os_unix.c, src/proto.h,
+ src/proto/os_beos.pro, src/pty.c, src/screen.c, src/term.c,
+ src/testdir/test_functions.vim, src/ui.c, src/vim.h
+
+Patch 8.2.0850
+Problem: MS-Windows: exepath() works differently from cmd.exe.
+Solution: Make exepath() work better on MS-Windows. (closes #6115)
+Files: runtime/doc/eval.txt, src/os_win32.c,
+ src/testdir/test_functions.vim
+
+Patch 8.2.0851 (after 8.2.0833)
+Problem: Can't distinguish <M-a> from accented "a" in the GUI.
+Solution: Use another way to make mapping <C-bslash> work. (closes #6163)
+Files: src/gui.c, src/gui_gtk_x11.c, src/getchar.c
+
+Patch 8.2.0852
+Problem: Cannot map CTRL-S on some systems.
+Solution: Do not use CTRL-S for flow control.
+Files: src/os_unix.c
+
+Patch 8.2.0853
+Problem: ml_delete() often called with FALSE argument.
+Solution: Use ml_delete_flags(x, ML_DEL_MESSAGE) when argument is TRUE.
+Files: src/buffer.c, src/change.c, src/diff.c, src/evalbuffer.c,
+ src/ex_cmds.c, src/ex_docmd.c, src/fileio.c, src/if_lua.c,
+ src/if_mzsch.c, src/if_ruby.c, src/if_tcl.c, src/normal.c,
+ src/popupmenu.c, src/popupwin.c, src/quickfix.c, src/spell.c,
+ src/terminal.c, src/if_perl.xs, src/if_py_both.h, src/memline.c,
+ src/proto/memline.pro
+
+Patch 8.2.0854
+Problem: Xxd cannot show offset as a decimal number.
+Solution: Add the "-d" flag. (Aapo Rantalainen, closes #5616)
+Files: src/testdir/test_xxd.vim, src/xxd/xxd.c
+
+Patch 8.2.0855
+Problem: GUI tests fail because the test doesn't use a modifier.
+Solution: Add "\{xxx}" to be able to encode a modifier.
+Files: runtime/doc/eval.txt, src/typval.c, src/misc2.c, src/vim.h,
+ src/proto/misc2.pro, src/gui_mac.c, src/option.c, src/highlight.c,
+ src/term.c, src/testdir/test_backspace_opt.vim,
+ src/testdir/test_mapping.vim, src/testdir/test_messages.vim
+
+Patch 8.2.0856 (after 8.2.0852)
+Problem: CTRL-S stops output.
+Solution: Invert the IXON flag. (closes #6166)
+Files: src/os_unix.c
+
+Patch 8.2.0857
+Problem: GTK cell height can be a pixel too much.
+Solution: Subtract 3 instead of 1 when rounding. (closes #6168)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.0858
+Problem: Not easy to require Lua modules.
+Solution: Improve use of Lua path. (Prabir Shrestha, closes #6098)
+Files: Filelist, src/if_lua.c, src/optionstr.c, src/proto/if_lua.pro,
+ src/testdir/test_lua.vim,
+ src/testdir/testluaplugin/lua/testluaplugin/hello.lua,
+ src/testdir/testluaplugin/lua/testluaplugin/init.lua
+
+Patch 8.2.0859
+Problem: No Turkish translation of the manual.
+Solution: Add Turkish translations. (Emir Sarı, closes #5641)
+Files: Filelist, runtime/doc/Makefile, runtime/doc/evim-tr.1,
+ runtime/doc/evim-tr.UTF-8.1, runtime/doc/vim-tr.1,
+ runtime/doc/vim-tr.UTF-8.1, runtime/doc/vimdiff-tr.1,
+ runtime/doc/vimdiff-tr.UTF-8.1, runtime/doc/vimtutor-tr.1,
+ runtime/doc/vimtutor-tr.UTF-8.1, src/Makefile
+
+Patch 8.2.0860
+Problem: Cannot use CTRL-A and CTRL-X on unsigned numbers.
+Solution: Add "unsigned" to 'nrformats'. (Naruhiko Nishino, closes #6144)
+Files: runtime/doc/options.txt, src/ops.c, src/optionstr.c,
+ src/testdir/test_increment.vim
+
+Patch 8.2.0861
+Problem: Cannot easily get all the current marks.
+Solution: Add getmarklist(). (Yegappan Lakshmanan, closes #6032)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/mark.c, src/proto/mark.pro, src/testdir/test_marks.vim
+
+Patch 8.2.0862
+Problem: ":term ++curwin" makes the current buffer hidden. (Harm te
+ Hennepe)
+Solution: Do not hide the current buffer. (closes #6170)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.0863
+Problem: Cannot set a separate color for underline/undercurl.
+Solution: Add the t_AU and t_8u termcap codes. (Timur Celik, closes #6011)
+Files: runtime/doc/syntax.txt, runtime/doc/term.txt, src/globals.h,
+ src/highlight.c, src/optiondefs.h, src/proto/term.pro,
+ src/screen.c, src/structs.h, src/term.c, src/term.h,
+ src/testdir/test_options.vim
+
+Patch 8.2.0864
+Problem: Pragmas are indented all the way to the left.
+Solution: Add an option to indent pragmas like normal code. (Max Rumpf,
+ closes #5468)
+Files: runtime/doc/indent.txt, src/cindent.c, src/structs.h,
+ src/testdir/test_cindent.vim
+
+Patch 8.2.0865
+Problem: Syntax foldlevel is taken from the start of the line.
+Solution: Add ":syn foldlevel" to be able to use the minimal foldlevel in
+ the line. (Brad King, closes #6087)
+Files: runtime/doc/syntax.txt, src/structs.h, src/syntax.c,
+ src/testdir/test_syntax.vim
+
+Patch 8.2.0866
+Problem: Not enough tests for buffer writing.
+Solution: Add more tests. Use CheckRunVimInTerminal in more places.
+ (Yegappan Lakshmanan, closes #6167)
+Files: src/testdir/test_arglist.vim, src/testdir/test_match.vim,
+ src/testdir/test_messages.vim, src/testdir/test_netbeans.py,
+ src/testdir/test_netbeans.vim, src/testdir/test_search.vim,
+ src/testdir/test_signals.vim, src/testdir/test_signs.vim,
+ src/testdir/test_startup.vim, src/testdir/test_startup_utf8.vim,
+ src/testdir/test_syntax.vim, src/testdir/test_tabpage.vim,
+ src/testdir/test_timers.vim, src/testdir/test_vimscript.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.0867
+Problem: Using \{xxx} for encoding a modifier is not nice.
+Solution: Use \<*xxx> instead, since it's the same as \<xxx> but producing a
+ different code.
+Files: runtime/doc/eval.txt, src/typval.c, src/misc2.c, src/vim.h,
+ src/testdir/test_backspace_opt.vim, src/testdir/test_mapping.vim,
+ src/testdir/test_messages.vim
+
+Patch 8.2.0868
+Problem: trim() always trims both ends.
+Solution: Add an argument to only trim the beginning or end. (Yegappan
+ Lakshmanan, closes #6126)
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_functions.vim
+
+Patch 8.2.0869
+Problem: It is not possible to customize the quickfix window contents.
+Solution: Add 'quickfixtextfunc'. (Yegappan Lakshmanan, closes #5465)
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/quickfix.txt, src/option.h, src/optiondefs.h,
+ src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.0870
+Problem: MS-Windows: Control keys don't work in the GUI.
+Solution: Don't set seenModifyOtherKeys for now. (Yasuhiro Matsumoto,
+ closes #6175)
+Files: src/gui.c
+
+Patch 8.2.0871
+Problem: Cannot use getmarklist() as a method.
+Solution: Make getmarklist() work as a method. Add one to the column
+ number to match getpos(). (Yegappan Lakshmanan, closes #6176)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/mark.c,
+ src/testdir/test_marks.vim
+
+Patch 8.2.0872
+Problem: XIM code is mixed with multibyte code.
+Solution: Move the XIM code to a separate file. (Yegappan Lakshmanan,
+ closes #6177)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/gui_xim.c,
+ src/mbyte.c, src/proto.h, src/proto/gui_xim.pro,
+ src/proto/mbyte.pro
+
+Patch 8.2.0873
+Problem: A .jl file can be sawfish (lisp) or Julia.
+Solution: Do not recognize *.jl as lisp, since it might be Julia.
+ (closes #6178)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0874
+Problem: Signals test is a bit flaky.
+Solution: Flush the XautoOut file. Delete files that may be left behind
+ from a failure. (Dominique Pellé, closes #6179)
+Files: src/testdir/test_signals.vim
+
+Patch 8.2.0875
+Problem: Getting attributes for directory entries is slow.
+Solution: Add readdirex(). (Ken Takata, closes #5619)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/fileio.c, src/filepath.c, src/proto/fileio.pro,
+ src/proto/filepath.pro, src/testdir/test_functions.vim
+
+Patch 8.2.0876
+Problem: :pwd does not give a hint about the scope of the directory
+Solution: Make ":verbose pwd" show the scope. (Takuya Fujiwara, closes #5469)
+Files: runtime/doc/editing.txt, src/ex_docmd.c, src/testdir/test_cd.vim
+
+Patch 8.2.0877
+Problem: Cannot get the search statistics.
+Solution: Add the searchcount() function. (Fujiwara Takuya, closes #4446)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/macros.h,
+ src/proto/search.pro, src/search.c,
+ src/testdir/test_search_stat.vim
+
+Patch 8.2.0878
+Problem: No reduce() function.
+Solution: Add a reduce() function. (closes #5481)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/globals.h, src/list.c,
+ src/proto/list.pro, src/testdir/test_listdict.vim
+
+Patch 8.2.0879
+Problem: Compiler warning for unused function argument.
+Solution: Add UNUSED.
+Files: src/search.c
+
+Patch 8.2.0880 (after 8.2.0877)
+Problem: Leaking memory when using searchcount().
+Solution: Free the last used search pattern.
+Files: src/search.c
+
+Patch 8.2.0881
+Problem: Compiler warning for argument type.
+Solution: Add type cast. (Mike Williams)
+Files: src/ops.c
+
+Patch 8.2.0882
+Problem: Leaking memory when using reduce().
+Solution: Free the intermediate value.
+Files: src/list.c
+
+Patch 8.2.0883
+Problem: Memory leak in test 49.
+Solution: Free "sfile" from the exception.
+Files: src/ex_docmd.c
+
+Patch 8.2.0884
+Problem: Searchcount() test fails on slower systems.
+Solution: Set a longer timeout.
+Files: src/search.c, src/testdir/test_search_stat.vim
+
+Patch 8.2.0885
+Problem: "make shadow" does not link new lua test dir.
+Solution: Also link testdir/testluaplugin. (Elimar Riesebieter)
+Files: src/Makefile
+
+Patch 8.2.0886
+Problem: Cannot use octal numbers in scriptversion 4.
+Solution: Add the "0o" notation. (Ken Takata, closes #5304)
+Files: runtime/doc/eval.txt, src/charset.c, src/evalfunc.c,
+ src/testdir/test_eval_stuff.vim, src/testdir/test_functions.vim,
+ src/vim.h
+
+Patch 8.2.0887
+Problem: Searchcount().exact_match is 1 right after a match.
+Solution: Use LT_POS() instead of LTOREQ_POS(). (closes #6189)
+Files: src/search.c, src/testdir/test_search_stat.vim
+
+Patch 8.2.0888
+Problem: Readdirex() returns size -2 for a directory.
+Solution: Add missing "else". (Ken Takata, closes #6185)
+Files: src/fileio.c, src/testdir/test_functions.vim
+
+Patch 8.2.0889
+Problem: Using old style comments.
+Solution: Use // comments. (Yegappan Lakshmanan, closes #6190)
+Files: src/gui_xim.c
+
+Patch 8.2.0890
+Problem: No color in terminal window when 'termguicolors' is set.
+Solution: Clear the underline color. (closes #6186)
+Files: src/highlight.c
+
+Patch 8.2.0891
+Problem: Clang warns for invalid conversion.
+Solution: Use zero instead of INVALCOLOR.
+Files: src/highlight.c
+
+Patch 8.2.0892
+Problem: Ubsan warns for undefined behavior.
+Solution: Use unsigned instead of signed variable. (Dominique Pellé,
+ closes #6193)
+Files: src/regexp_nfa.c
+
+Patch 8.2.0893
+Problem: Assert_equalfile() does not take a third argument.
+Solution: Implement the third argument. (Gary Johnson)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt, src/evalfunc.c,
+ src/testdir/test_assert.vim, src/testing.c
+
+Patch 8.2.0894
+Problem: :mkspell can take very long if the word count is high.
+Solution: Use long to avoid negative numbers. Increase the limits by 20% if
+ the compression did not have effect.
+Files: src/spellfile.c
+
+Patch 8.2.0895
+Problem: :mkspell output does not mention the tree type.
+Solution: Back out increasing the limits, it has no effect. Mention the
+ tree being compressed. Only give a message once per second.
+Files: src/spellfile.c
+
+Patch 8.2.0896
+Problem: Crash when calling searchcount() with a string.
+Solution: Check the argument is a dict. (closes #6192)
+Files: src/search.c, src/testdir/test_search_stat.vim
+
+Patch 8.2.0897
+Problem: List of functions in patched version is outdated.
+Solution: Update the function lists only.
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt
+
+Patch 8.2.0898
+Problem: Missing help for a function goes unnoticed.
+Solution: Add a test. (Gary Johnson)
+Files: src/testdir/test_function_lists.vim, src/testdir/Make_all.mak
+
+Patch 8.2.0899
+Problem: Assert_equalfile() does not give a hint about the difference.
+Solution: Display the last seen text.
+Files: src/testing.c, src/testdir/test_assert.vim
+
+Patch 8.2.0900
+Problem: Function list test fails on MS-Windows.
+Solution: Make sure the fileformat is "unix"
+Files: src/testdir/test_function_lists.vim
+
+Patch 8.2.0901
+Problem: Formatting CJK text isn't optimal.
+Solution: Properly break CJK lines. (closes #3875)
+Files: runtime/doc/change.txt, src/mbyte.c, src/ops.c, src/option.h,
+ src/proto/mbyte.pro, src/testdir/Make_all.mak, src/textformat.c,
+ src/testdir/test_cjk_linebreak.vim
+
+Patch 8.2.0902
+Problem: Using searchcount() in 'statusline' causes an error.
+Solution: Avoid saving/restoring the search pattern recursively.
+ (closes #6194)
+Files: src/search.c, src/testdir/test_search_stat.vim,
+ src/testdir/dumps/Test_searchstat_4.dump
+
+Patch 8.2.0903
+Problem: comparing WINVER does not work correctly.
+Solution: Use arithmetic expansion. (Ozaki Kiichi, closes #6197)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.0904
+Problem: Assuming modifyOtherKeys for rhs of mapping.
+Solution: Ignore seenModifyOtherKeys for mapped characters. (closes #6200)
+Files: src/getchar.c, src/testdir/test_gui.vim
+
+Patch 8.2.0905
+Problem: Test coverage could be better.
+Solution: Add a couple of tests. (Dominique Pellé, closes #6202)
+Files: src/testdir/test_cmdline.vim, src/testdir/test_ga.vim
+
+Patch 8.2.0906
+Problem: When setting 'termguicolors' SpellBad is no longer red.
+Solution: Only use the RGB guisp color for cterm when using the "underline"
+ or "undercurl" attributes to avoid the background color to be
+ cleared. Also make t_8u empty when the termresponse indicates a
+ real xterm. (closes #6207)
+Files: src/highlight.c, src/term.c
+
+Patch 8.2.0907
+Problem: When using :global clipboard isn't set correctly.
+Solution: Set "clip_unnamed_saved" instead of "clip_unnamed". (Christian
+ Brabandt, closes #6203, closes #6198)
+Files: src/clipboard.c, src/testdir/test_global.vim
+
+Patch 8.2.0908
+Problem: Crash when changing the function table while listing it.
+Solution: Bail out when the function table changes. (closes #6209)
+Files: src/userfunc.c, src/testdir/test_timers.vim
+
+Patch 8.2.0909
+Problem: Cannot go back to the previous local directory.
+Solution: Add "tcd -" and "lcd -". (Yegappan Lakshmanan, closes #4362)
+Files: runtime/doc/editing.txt, src/filepath.c, src/ex_docmd.c,
+ src/structs.h, src/testdir/test_cd.vim, src/window.c
+
+Patch 8.2.0910
+Problem: Vim is not reproducibly buildable.
+Solution: Use the $SOURCE_DATE_EPOCH environment variable in configure.
+ (James McCoy, closes #513) Give a warning about using it.
+Files: src/config.h.in, src/config.mk.in, src/configure.ac,
+ src/auto/configure, src/version.c, src/Makefile
+
+Patch 8.2.0911
+Problem: Crash when opening a buffer for the cmdline window fails. (Chris
+ Barber)
+Solution: Check do_ecmd() succeeds. Reset got_int if "q" was used at the
+ more prompt. (closes #6211)
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_cmdwin_interrupted.dump
+
+Patch 8.2.0912
+Problem: A few test cases for CJK formatting are disabled.
+Solution: Fix the tests and enable them. (closes #6212)
+Files: src/testdir/test_cjk_linebreak.vim
+
+Patch 8.2.0913
+Problem: Code for resetting v:register is duplicated.
+Solution: Add reset_reg_var().
+Files: src/evalvars.c, src/proto/evalvars.pro, src/main.c, src/normal.c
+
+Patch 8.2.0914
+Problem: MS-Windows: cannot specify a "modified by" text.
+Solution: Add MODIFIED_BY in the MSVC build file. (Chen Lei, closes #1275)
+Files: src/Make_mvc.mak
+
+Patch 8.2.0915
+Problem: Search() cannot skip over matches like searchpair() can.
+Solution: Add an optional "skip" argument. (Christian Brabandt, closes #861)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_syntax.vim,
+ src/structs.h, src/evalvars.c, src/proto/evalvars.pro
+
+Patch 8.2.0916
+Problem: Mapping with partly modifyOtherKeys code does not work.
+Solution: If there is no mapping with a separate modifier include the
+ modifier in the key and then try mapping again. (closes #6200)
+Files: src/getchar.c, src/proto/getchar.pro, src/edit.c, src/term.c,
+ src/proto/term.pro, src/testdir/test_termcodes.vim
+
+Patch 8.2.0917
+Problem: Quickfix entries do not support a "note" type.
+Solution: Add support for "note". (partly by Yegappan Lakshmanan,
+ closes #5527, closes #6216)
+Files: runtime/doc/quickfix.txt, src/quickfix.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.0918
+Problem: Duplicate code for evaluating expression argument.
+Solution: Merge the code and make the use more flexible.
+Files: src/evalfunc.c, src/eval.c, src/proto/eval.pro, src/evalvars.c,
+ src/proto/evalvars.pro, src/structs.h
+
+Patch 8.2.0919
+Problem: Merging modifier for modifyOtherKeys is done twice.
+Solution: Remove the merging done in vgetc().
+Files: src/getchar.c, src/ex_getln.c
+
+Patch 8.2.0920
+Problem: Writing viminfo fails with a circular reference.
+Solution: Use copyID to detect the cycle. (closes #6217)
+Files: src/testdir/test_viminfo.vim, src/viminfo.c
+
+Patch 8.2.0921
+Problem: CTRL-W T in cmdline window causes trouble.
+Solution: Disallow CTRL-W T in the cmdline window. Add more tests.
+ (Naruhiko Nishino, closes #6219)
+Files: src/testdir/test_cmdline.vim, src/window.c
+
+Patch 8.2.0922
+Problem: Search test fails.
+Solution: Remove failure tests for calls that no longer fail.
+Files: src/testdir/test_search.vim
+
+Patch 8.2.0923
+Problem: Cmdline test is slow.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_cmdline.vim
+
+Patch 8.2.0924
+Problem: Cannot save and restore a register properly.
+Solution: Add getreginfo() and make setreg() accept a dictionary. (Andy
+ Massimino, closes #3370)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/proto/register.pro, src/register.c,
+ src/testdir/test_eval_stuff.vim, src/testdir/test_registers.vim
+
+Patch 8.2.0925
+Problem: Getcompletion() does not return command line arguments.
+Solution: Add the "cmdline" option. (Shougo, closes #1140)
+Files: runtime/doc/eval.txt, src/cmdexpand.c,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.0926
+Problem: Cmdline test fails on Appveyor.
+Solution: Add CR to the commands. (Naruhiko Nishino, closes #6220)
+Files: src/testdir/test_cmdline.vim
+
+Patch 8.2.0927
+Problem: Some sshconfig and ssdhconfig files are not recognized.
+Solution: Add filetype patterns.
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0928
+Problem: Many type casts are used for vim_strnsave().
+Solution: Make the length argument size_t instead of int. (Ken Takata,
+ closes #5633) Remove some type casts.
+Files: src/misc2.c, src/proto/misc2.pro, src/autocmd.c, src/channel.c,
+ src/cmdexpand.c, src/dict.c, src/diff.c, src/digraph.c,
+ src/eval.c, src/evalfunc.c, src/highlight.c, src/syntax.c
+
+Patch 8.2.0929
+Problem: v:register is not cleared after an operator was executed.
+Solution: Clear v:register after finishing an operator (Andy Massimino,
+ closes #5305)
+Files: src/normal.c, src/testdir/test_registers.vim
+
+Patch 8.2.0930
+Problem: Script filetype detection trips over env -S argument.
+Solution: Remove "-S" and "--ignore-environment". (closes #5013)
+ Add tests.
+Files: runtime/scripts.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0931
+Problem: Some remarks about BeOS remain.
+Solution: Remove BeOS remarks from the help and other files. (Emir Sarı,
+ closes #6221)
+Files: READMEdir/README_extra.txt, runtime/doc/options.txt,
+ runtime/doc/os_beos.txt, runtime/doc/os_vms.txt,
+ runtime/doc/vi_diff.txt, src/INSTALL
+
+Patch 8.2.0932
+Problem: Misspelling spelllang.
+Solution: Add an "l". (Dominique Pellé)
+Files: src/optionstr.c, src/proto/spell.pro, src/spell.c
+
+Patch 8.2.0933
+Problem: 'quickfixtextfunc' does not get window ID of location list.
+Solution: Add "winid" to the dict argument. (Yegappan Lakshmanan,
+ closes #6222)
+Files: runtime/doc/quickfix.txt, src/quickfix.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.0934
+Problem: Running lhelpgrep twice in a help window doesn't jump to the help
+ topic.
+Solution: Check whether any window with the location list is present.
+ (Yegappan Lakshmanan, closes #6215)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.0935
+Problem: Flattening a list with existing code is slow.
+Solution: Add flatten(). (Mopp, closes #3676)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/list.c, src/proto/list.pro, src/testdir/Make_all.mak,
+ src/testdir/test_flatten.vim
+
+Patch 8.2.0936
+Problem: Some terminals misinterpret the code for getting cursor style.
+Solution: Send a sequence to the terminal and check the result. (IWAMOTO
+ Kouichi, closes #2126) Merged with current code.
+Files: src/main.c, src/term.c, src/proto/term.pro,
+ src/testdir/term_util.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_startup_utf8.vim,
+ src/testdir/dumps/Test_balloon_eval_term_01.dump,
+ src/testdir/dumps/Test_balloon_eval_term_01a.dump,
+ src/testdir/dumps/Test_balloon_eval_term_02.dump,
+ src/testdir/dumps/Test_terminal_all_ansi_colors.dump
+
+Patch 8.2.0937
+Problem: Asan failure in the flatten() test.
+Solution: Free the flattened list.
+Files: src/list.c
+
+Patch 8.2.0938
+Problem: NFA regexp uses tolower() to compare ignore-case. (Thayne McCombs)
+Solution: Use utf_fold() when possible. (ref. neovim #12456)
+Files: src/macros.h, src/diff.c, src/regexp_nfa.c,
+ src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.0939
+Problem: checking for term escape sequences is long and confusing
+Solution: Refactor code into separate functions.
+Files: src/term.c
+
+Patch 8.2.0940 (after 8.2.0939)
+Problem: Build failure with tiny features.
+Solution: Add #ifdef. Add UNUSED. A bit more cleaning up.
+Files: src/term.c
+
+Patch 8.2.0941
+Problem: Detecting terminal properties is unstructured.
+Solution: Add a table with terminal properties. Set properties when a
+ terminal is detected.
+Files: src/term.c
+
+Patch 8.2.0942
+Problem: Expanding to local dir after homedir keeps "~/".
+Solution: Adjust modify_fname(). (Christian Brabandt, closes #6205,
+ closes #5979)
+Files: src/filepath.c, src/testdir/test_fnamemodify.vim
+
+Patch 8.2.0943
+Problem: Displaying ^M or ^J depends on current buffer.
+Solution: Pass the displayed buffer to transchar(). (closes #6225)
+Files: src/drawline.c, src/charset.c, src/proto/charset.pro,
+ src/ex_cmds.c, src/gui_beval.c, src/message.c,
+ src/testdir/test_display.vim,
+ src/testdir/dumps/Test_display_unprintable_01.dump,
+ src/testdir/dumps/Test_display_unprintable_02.dump
+
+Patch 8.2.0944
+Problem: Xxd test leaves file behind.
+Solution: Delete the file "XXDfile". (Christian Brabandt, closes #6228)
+Files: src/testdir/test_xxd.vim
+
+Patch 8.2.0945
+Problem: Cannot use "z=" when 'spell' is off.
+Solution: Make "z=" work even when 'spell' is off. (Christian Brabandt,
+ Gary Johnson, closes #6227)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/spell.c,
+ src/spellsuggest.c, src/testdir/test_spell.vim, src/globals.h
+
+Patch 8.2.0946
+Problem: Cannot use "q" to cancel a number prompt.
+Solution: Recognize "q" instead of ignoring it.
+Files: src/misc1.c, src/testdir/test_functions.vim
+
+Patch 8.2.0947
+Problem: Readdirex() doesn't handle broken link properly.
+Solution: Small fixes to readdirex(). (Christian Brabandt, closes #6226,
+ closes #6213)
+Files: src/fileio.c, src/testdir/test_functions.vim
+
+Patch 8.2.0948
+Problem: Spell test fails.
+Solution: Adjust expected text of the prompt.
+Files: src/testdir/test_spell.vim
+
+Patch 8.2.0949
+Problem: Strptime() does not use DST.
+Solution: Set the tm_isdst field to -1. (Tomáš Janoušek, closes #6230)
+Files: src/time.c, src/testdir/test_functions.vim
+
+Patch 8.2.0950
+Problem: Tagjump test fails.
+Solution: Adjust expected text of the prompt.
+Files: src/testdir/test_tagjump.vim
+
+Patch 8.2.0951
+Problem: Search stat test has leftover from debugging.
+Solution: Remove line that writes a file. (Christian Brabandt, closes #6224)
+Files: src/testdir/test_search_stat.vim
+
+Patch 8.2.0952
+Problem: No simple way to interrupt Vim.
+Solution: Add the SigUSR1 autocommand, triggered by SIGUSR1. (Jacob Hayes,
+ closes #1718)
+Files: runtime/doc/autocmd.txt, src/vim.h, src/autocmd.c, src/getchar.c,
+ src/globals.h, src/os_unix.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.0953
+Problem: Spell checking doesn't work for CamelCased words.
+Solution: Add the "camel" value in the new option 'spelloptions'.
+ (closes #1235)
+Files: runtime/doc/options.txt, runtime/doc/spell.txt, src/optiondefs.h,
+ src/option.h, src/option.c, src/buffer.c, src/optionstr.c,
+ src/testdir/gen_opt_test.vim, src/testdir/test_spell.vim
+
+Patch 8.2.0954
+Problem: Not all desktop files are recognized.
+Solution: Add the *.directory pattern. (Eisuke Kawashima, closes #3317)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0955 (after 8.2.0953)
+Problem: Build fails.
+Solution: Add missing struct change.
+Files: src/structs.h
+
+Patch 8.2.0956 (after 8.2.0953)
+Problem: Spell test fails.
+Solution: Add missing change the spell checking.
+Files: src/spell.c
+
+Patch 8.2.0957
+Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
+Solution: Initialize one variable.
+Files: src/spell.c
+
+Patch 8.2.0958
+Problem: Not sufficient testing for buffer writing.
+Solution: Add a few tests. (Yegappan Lakshmanan, closes #6238)
+Files: src/testdir/test_backup.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.0959
+Problem: Using 'quickfixtextfunc' is a bit slow.
+Solution: Process a list of entries. (Yegappan Lakshmanan, closes #6234)
+Files: runtime/doc/quickfix.txt, src/quickfix.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.0960
+Problem: Cannot use :import in legacy Vim script.
+Solution: Support :import in any Vim script.
+Files: src/vim9script.c, src/evalvars.c, src/userfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0961
+Problem: MS-Windows: no completion for locales.
+Solution: Use the directories in $VIMRUNTIME/lang to complete locales.
+ (Christian Brabandt, closes 36248)
+Files: src/cmdexpand.c, src/ex_cmds2.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.0962
+Problem: Terminal test sometimes hangs on Travis.
+Solution: Do show output for this test temporarily.
+Files: src/testdir/Makefile
+
+Patch 8.2.0963
+Problem: Number increment/decrement does not work with 'virtualedit'.
+Solution: Handle coladd changing. (Christian Brabandt, closes #6240,
+ closes #923)
+Files: runtime/doc/options.txt, runtime/doc/various.txt, src/ops.c,
+ src/testdir/test_increment.vim
+
+Patch 8.2.0964
+Problem: TextYankPost does not provide info about Visual selection.
+Solution: Add the 'visual' key in v:event. (closes #6249)
+Files: runtime/doc/autocmd.txt, src/register.c,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.0965
+Problem: Has_funcundefined() is not used.
+Solution: Delete the function. (Dominique Pellé, closes #6242)
+Files: src/autocmd.c, src/proto/autocmd.pro
+
+Patch 8.2.0966
+Problem: 'shortmess' flag "n" not used in two places.
+Solution: Make use of the "n" flag consistent. (Nick Jensen, closes #6245,
+ closes #6244)
+Files: src/bufwrite.c, src/proto/bufwrite.pro, src/buffer.c,
+ src/fileio.c, src/testdir/dumps/Test_popup_textprop_corn_5.dump,
+ src/testdir/dumps/Test_start_with_tabs.dump
+
+Patch 8.2.0967
+Problem: Unnecessary type casts for vim_strnsave().
+Solution: Remove the type casts.
+Files: src/evalvars.c, src/ex_cmds.c, src/ex_eval.c, src/fileio.c,
+ src/filepath.c, src/findfile.c, src/highlight.c, src/if_ruby.c,
+ src/insexpand.c, src/json.c, src/mark.c, src/memline.c,
+ src/menu.c, src/misc1.c, src/ops.c, src/os_win32.c, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/search.c,
+ src/sign.c, src/syntax.c, src/term.c, src/terminal.c, src/undo.c,
+ src/usercmd.c, src/userfunc.c, src/vim9compile.c, src/if_perl.xs
+
+Patch 8.2.0968
+Problem: No proper testing of the 'cpoptions' flags.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6251)
+Files: src/testdir/Make_all.mak, src/testdir/test_cpoptions.vim,
+ src/testdir/test_edit.vim, src/testdir/test_normal.vim
+
+Patch 8.2.0969
+Problem: Assert_equal() output for dicts is hard to figure out.
+Solution: Only show the different items.
+Files: src/testing.c, src/testdir/test_assert.vim
+
+Patch 8.2.0970
+Problem: Terminal properties are not available in Vim script.
+Solution: Add the terminalprops() function.
+Files: src/term.c, src/proto/term.pro, src/evalfunc.c, src/main.c,
+ src/testing.c, src/globals.h, src/testdir/test_termcodes.vim,
+ runtime/doc/usr_41.txt, runtime/doc/eval.txt,
+ runtime/doc/testing.txt
+
+Patch 8.2.0971
+Problem: Build with tiny features fails.
+Solution: Add #ifdef.
+Files: src/term.c
+
+Patch 8.2.0972
+Problem: Vim9 script variable declarations need a type.
+Solution: Make "let var: type" declare a script-local variable.
+Files: src/evalvars.c, src/vim9script.c, src/proto/vim9script.pro,
+ src/globals.h, src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0973
+Problem: Vim9: type is not checked when assigning to a script variable.
+Solution: Check the type.
+Files: src/evalvars.c, src/vim9script.c, src/proto/vim9script.pro,
+ src/vim9compile.c, src/proto/vim9compile.pro,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.0974
+Problem: Vim9: memory leak when script var has wrong type.
+Solution: Free the variable name.
+Files: src/vim9script.vim
+
+Patch 8.2.0975
+Problem: Vim9: script variable does not accept optional s: prefix.
+Solution: Adjust the accepted syntax.
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0976
+Problem: Some 'cpoptions' not tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6253)
+Files: src/testdir/test_cd.vim, src/testdir/test_charsearch.vim,
+ src/testdir/test_cpoptions.vim, src/testdir/test_normal.vim
+
+Patch 8.2.0977
+Problem: t_8u is made empty for the wrong terminals. (Dominique Pelle)
+Solution: Invert the check for TPR_YES. (closes #6254)
+Files: src/term.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.0978
+Problem: Leaking memory in termcodes test.
+Solution: Set t_8u with set_option_value().
+Files: src/term.c
+
+Patch 8.2.0979
+Problem: A couple of screendump tests fail.
+Solution: Do not redraw when clearing t_8u.
+Files: src/term.c
+
+Patch 8.2.0980
+Problem: Raku file extension not recognized. (Steven Penny)
+Solution: Recognize .raku and .rakumod. (closes #6255)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0981
+Problem: Vim9: cannot compile "[var, var] = list".
+Solution: Implement list assignment.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0982
+Problem: Insufficient testing for reading/writing files.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6257)
+ Add "ui_delay" to test_override() and use it for the CTRL-O test.
+Files: src/testing.c, src/globals.h, src/ui.c, runtime/doc/testing.txt,
+ src/testdir/test_autocmd.vim, src/testdir/test_edit.vim,
+ src/testdir/test_filechanged.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.0983
+Problem: SConstruct file type not recognized.
+Solution: Use python for SConstruct files. (Roland Hieber)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.0984
+Problem: Not using previous window when closing a shell popup window.
+Solution: Use "prevwin" if it was set. (closes #6267)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.0985
+Problem: Simplify() does not remove slashes from "///path".
+Solution: Reduce > 2 slashes to one. (closes #6263)
+Files: src/findfile.c, src/testdir/test_functions.vim
+
+Patch 8.2.0986 (after 8.2.0985)
+Problem: MS-Windows: functions test fails.
+Solution: Only simplify ///path on Unix.
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.0987
+Problem: Vim9: cannot assign to [var; var].
+Solution: Assign rest of items to a list.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/list.c,
+ src/proto/list.pro, src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.0988
+Problem: Getting directory contents is always case sorted.
+Solution: Add sort options and v:collate. (Christian Brabandt, closes #6229)
+Files: runtime/doc/eval.txt, runtime/doc/mlang.txt, src/auto/configure,
+ src/cmdexpand.c, src/config.h.in, src/configure.ac,
+ src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c, src/fileio.c,
+ src/filepath.c, src/globals.h, src/proto/fileio.pro,
+ src/testdir/test_cmdline.vim, src/testdir/test_functions.vim,
+ src/vim.h
+
+Patch 8.2.0989
+Problem: Crash after resizing a terminal window. (August Masquelier)
+Solution: Add check for valid row in libvterm. (closes #6273)
+Files: src/libvterm/src/state.c, src/libvterm/src/screen.c
+
+Patch 8.2.0990 (after 8.2.0988)
+Problem: Using duplicate error number.
+Solution: Use an unused error number. Add a test for it.
+Files: src/globals.h, src/testdir/test_functions.vim
+
+Patch 8.2.0991
+Problem: Cannot get window type for autocmd and preview window.
+Solution: Add types to win_gettype(). (Yegappan Lakshmanan, closes #6277)
+Files: runtime/doc/eval.txt, src/evalwindow.c,
+ src/testdir/test_autocmd.vim, src/testdir/test_preview.vim
+
+Patch 8.2.0992
+Problem: Vim9: crash when using :import in the Vim command.
+Solution: Give an error when using :import outside of a script.
+ (closes #6271)
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim,
+ src/testdir/term_util.vim
+
+Patch 8.2.0993
+Problem: Vim9 script test fails with normal features.
+Solution: Use :func instead of :def for now.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0994
+Problem: Vim9: missing function causes compilation error.
+Solution: Call test function indirectly.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.0995
+Problem: Insufficient testing for the readdir() sort option.
+Solution: Add a few more tests. (Christian Brabandt, closes #6278)
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.0996
+Problem: Using "aucmdwin" in win_gettype() is not ideal.
+Solution: Rename to "autocmd".
+Files: runtime/doc/eval.txt, src/evalwindow.c,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.0997
+Problem: Cannot execute a register containing line continuation.
+Solution: Concatenate lines where needed. (Yegappan Lakshmanan,
+ closes #6272)
+Files: runtime/doc/repeat.txt, src/register.c,
+ src/testdir/test_registers.vim
+
+Patch 8.2.0998
+Problem: Not all tag code is tested.
+Solution: Add a few more test cases. (Yegappan Lakshmanan, closes #6284)
+Files: src/testdir/test_tagjump.vim
+
+Patch 8.2.0999
+Problem: Moving to next sentence gets stuck on quote.
+Solution: When moving to the next sentence doesn't result in moving, advance
+ a character and try again. (closes #6291)
+Files: src/textobject.c, src/testdir/test_textobjects.vim
+
+Patch 8.2.1000
+Problem: Get error when leaving Ex mode with :visual and a CmdLineEnter
+ autocommand was used.
+Solution: Reset ex_pressedreturn. (closes #6293)
+Files: src/ex_docmd.c, src/testdir/test_ex_mode.vim
+
+Patch 8.2.1001
+Problem: Vim9: crash with nested "if" and assignment.
+Solution: Skip more of the assignment. Do not set ctx_skip when code is
+ reachable.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1002
+Problem: Test may fail when run directly.
+Solution: Check if g:run_nr exists. (Christian Brabandt, closes #6285)
+Files: src/testdir/term_util.vim
+
+Patch 8.2.1003
+Problem: Vim9: return type of sort() is too generic.
+Solution: Get type from the first argument. (closes #6292)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1004
+Problem: Line numbers below filler lines not always updated.
+Solution: Don't break out of the win_line() loop too early. (Christian
+ Brabandt, closes #6294, closes #6138)
+Files: src/drawline.c, src/testdir/dumps/Test_diff_rnu_01.dump,
+ src/testdir/dumps/Test_diff_rnu_02.dump,
+ src/testdir/dumps/Test_diff_rnu_03.dump,
+ src/testdir/test_diffmode.vim
+
+Patch 8.2.1005
+Problem: Vim9: using TRUE/FALSE/MAYBE for ctx_skip is confusing.
+Solution: Use an enum value.
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1006
+Problem: Vim9: require unnecessary return statement.
+Solution: Improve the use of the had_return flag. (closes #6270)
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1007
+Problem: Completion doesn't work after ":r ++arg !".
+Solution: Skip over "++arg". (Christian Brabandt, closes #6275,
+ closes #6258)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.1008
+Problem: Vim9: no test for disassembling newly added instructions.
+Solution: Add a function and check disassembly.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1009
+Problem: Vim9: some failures not checked for.
+Solution: Add test cases. Remove unused code.
+Files: src/testdir/test_vim9_script.vim, src/vim9execute.c
+
+Patch 8.2.1010
+Problem: Build failure in libvterm with debug enabled. (John Little)
+Solution: Use "->" instead of ".".
+Files: src/libvterm/src/state.c
+
+Patch 8.2.1011
+Problem: Vim9: some code not tested.
+Solution: Add a few more test cases. Reorder checks for clearer error.
+ Remove unreachable code.
+Files: src/evalvars.c, src/vim9script.c, src/vim9execute.c,
+ src/proto/vim9script.pro, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1012
+Problem: Vim9: cannot declare single character script variables.
+Solution: Don't see "b:", "s:", etc. as namespace. Fix item size of
+ sn_var_vals.
+Files: src/vim9script.c, src/scriptfile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1013
+Problem: Channel tests can be a bit flaky.
+Solution: Set the g:test_is_flaky flag in SetUp().
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.1014
+Problem: Using "name" for a string result is confusing.
+Solution: Rename to "end".
+Files: src/typval.c
+
+Patch 8.2.1015
+Problem: Popup filter gets key with modifier prepended when using
+ modifyOtherKeys.
+Solution: Remove the shift modifier when it is included in the key, also
+ when the Alt or Meta modifier is used.
+Files: src/term.c, src/misc2.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1016
+Problem: Vim9: test fails when channel feature is missing.
+Solution: Process an :if command when skipping
+Files: src/vim9compile.c
+
+Patch 8.2.1017
+Problem: Appveyor output doesn't show MinGW console features.
+Solution: List the features of the console build.
+Files: ci/appveyor.bat
+
+Patch 8.2.1018
+Problem: Typo in enum value. (James McCoy)
+Solution: Fix the typo.
+Files: src/vim9compile.c
+
+Patch 8.2.1019
+Problem: Mapping <M-S-a> does not work in the GUI.
+Solution: Move the logic to remove the shift modifier to
+ may_remove_shift_modifier() and also use it in the GUI.
+Files: src/gui_gtk_x11.c, src/misc2.c, src/proto/misc2.pro, src/term.c
+
+Patch 8.2.1020
+Problem: Popupwin test fails in the GUI.
+Solution: Send GUI byte sequence for <C-S-a>.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.1021
+Problem: Ruby interface not tested enough.
+Solution: Add a couple more tests. (Dominique Pellé, closes #6301)
+Files: src/testdir/test_ruby.vim
+
+Patch 8.2.1022
+Problem: Various parts of code not covered by tests.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6300)
+Files: src/testdir/test_blob.vim, src/testdir/test_cpoptions.vim,
+ src/testdir/test_digraph.vim, src/testdir/test_edit.vim,
+ src/testdir/test_iminsert.vim, src/testdir/test_paste.vim,
+ src/testdir/test_prompt_buffer.vim,
+ src/testdir/test_selectmode.vim, src/testdir/test_tabpage.vim,
+ src/testdir/test_tagjump.vim, src/testdir/test_textformat.vim,
+ src/testdir/test_viminfo.vim, src/testdir/test_virtualedit.vim,
+ src/testdir/test_visual.vim
+
+Patch 8.2.1023
+Problem: Vim9: redefining a function uses a new index every time.
+Solution: When redefining a function clear the contents and re-use the
+ index.
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
+ src/structs.h, src/eval.c, src/evalvars.c, src/vim9execute.c
+
+Patch 8.2.1024
+Problem: Vim9: no error for using "let g:var = val".
+Solution: Add an error.
+Files: src/evalvars.c, src/globals.h, src/structs.h, src/vim9compile.c,
+ src/scriptfile.c, src/userfunc.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1025
+Problem: Tabpage menu and tabline not sufficiently tested.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6307)
+Files: src/testdir/test_digraph.vim, src/testdir/test_tabpage.vim
+
+Patch 8.2.1026
+Problem: Vim9: cannot break the line after "->".
+Solution: Check for a continuation line after "->", "[" and ".". Ignore
+ trailing white space.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1027
+Problem: GUI: multibyte characters do not work in a terminal.
+Solution: Do not assume a key is one byte. (closes #6304)
+Files: src/gui_gtk_x11.c, src/gui_x11.c
+
+Patch 8.2.1028
+Problem: Vim9: no error for declaring buffer, window, etc. variable.
+Solution: Give an error. Unify the error messages.
+Files: src/evalvars.c, src/globals.h, src/vim9compile.c,
+ src/proto/vim9compile.pro, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1029
+Problem: Vim9: cannot chain function calls with -> at line start.
+Solution: Peek ahead for a following line starting with "->". (closes #6306)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1030
+Problem: Reducing size of a terminal window may cause a crash.
+Solution: Make sure the row and column don't become negative. (closes #6273)
+Files: src/libvterm/src/state.c, src/libvterm/src/screen.c
+
+Patch 8.2.1031
+Problem: Build failure with Perl5.32.
+Solution: Define a few more functions. (Felix Yan, closes #6310)
+Files: src/if_perl.xs
+
+Patch 8.2.1032
+Problem: Error message for declaring a variable cannot be translated.
+Solution: Enclose in _(). Make environment variable a separate message.
+Files: src/globals.h, src/vim9compile.c
+
+Patch 8.2.1033
+Problem: Not easy to read the test time in the test output.
+Solution: Align the times. Make slow tests bold.
+Files: src/testdir/runtest.vim
+
+Patch 8.2.1034
+Problem: Compiler warning for uninitialized variables.
+Solution: Add initializations. (John Marriott)
+Files: src/vim9compile.c
+
+Patch 8.2.1035
+Problem: setreg() does not always clear the register.
+Solution: Clear the register if the dict argument is empty. (Andy Massimino,
+ closes #3370)
+Files: src/evalfunc.c, src/testdir/test_registers.vim
+
+Patch 8.2.1036
+Problem: Popupwin test fails sometimes.
+Solution: Use WaitForAssert() instead of a sleep.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.1037
+Problem: Vim9: crash when using line continuation inside :def.
+Solution: Check for no more lines available.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1038
+Problem: Popupwin test fails.
+Solution: Fix WaitForAssert() argument.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.1039
+Problem: Cannot put NUL byte on clipboard.
+Solution: Use the text length. (Christian Brabandt, closes #6312,
+ closes #6149)
+Files: src/winclip.c, src/testdir/test_registers.vim
+
+Patch 8.2.1040
+Problem: Not enough testing for movement commands.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6313)
+Files: src/testdir/test_cursor_func.vim, src/testdir/test_functions.vim,
+ src/testdir/test_gf.vim, src/testdir/test_normal.vim,
+ src/testdir/test_options.vim, src/testdir/test_quickfix.vim
+
+Patch 8.2.1041
+Problem: Test summary is missing executed count.
+Solution: Adjust pattern used for counting.
+Files: src/testdir/summarize.vim
+
+Patch 8.2.1042
+Problem: Vim9: cannot put an operator on the next line.
+Solution: Require a colon before a range to see if that causes problems.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/ex_docmd.c,
+ src/globals.h, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1043
+Problem: %a item in 'statusline' not tested.
+Solution: Add a test. (Dominique Pellé, closes #6318)
+Files: src/testdir/test_statusline.vim
+
+Patch 8.2.1044
+Problem: Not all systemd file types are recognized.
+Solution: Match several more files. (Guido Cella, closes #6319)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1045
+Problem: Vim9: line break before operator does not work.
+Solution: Peek the next line for an operator.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1046
+Problem: Insufficient tests for src/buffer.c.
+Solution: Add more tests. Move comments related tests to a separate file.
+ (Yegappan Lakshmanan, closes #6325)
+Files: src/testdir/Make_all.mak, src/testdir/test_buffer.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_comments.vim,
+ src/testdir/test_normal.vim, src/testdir/test_textformat.vim
+
+Patch 8.2.1047
+Problem: Vim9: script cannot use line continuation like in a :def function.
+Solution: Pass the getline function pointer to the eval() functions. Use it
+ for addition and multiplication operators.
+Files: src/vim.h, src/structs.h, src/globals.h, src/ex_eval.c,
+ src/eval.c, src/proto/eval.pro, src/dict.c, src/evalfunc.c,
+ src/evalvars.c, src/list.c, src/userfunc.c, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1048 (after 8.2.1047)
+Problem: Build failure without the eval feature.
+Solution: Add dummy typedef.
+Files: src/structs.h
+
+Patch 8.2.1049 (after 8.2.1047)
+Problem: Vim9: leaking memory when using continuation line.
+Solution: Keep a pointer to the continuation line in evalarg_T. Centralize
+ checking for a next command.
+Files: src/structs.h, src/eval.c, src/proto/eval.pro, src/beval.c,
+ src/buffer.c, src/clientserver.c, src/evalvars.c, src/ex_docmd.c,
+ src/ex_eval.c, src/filepath.c, src/findfile.c, src/fold.c,
+ src/globals.h, src/if_ole.cpp, src/if_perl.xs, src/if_tcl.c,
+ src/map.c, src/quickfix.c, src/regexp.c, src/register.c,
+ src/screen.c, src/userfunc.c
+
+Patch 8.2.1050 (after 8.2.1049)
+Problem: Missing change in struct.
+Solution: Add missing change.
+Files: src/ex_cmds.h
+
+Patch 8.2.1051
+Problem: Crash when changing a list while using reduce() on it.
+Solution: Lock the list. (closes #6330)
+Files: src/list.c, src/testdir/test_listdict.vim
+
+Patch 8.2.1052
+Problem: Build failure with older compilers.
+Solution: Move declaration to start of block.
+Files: src/eval.c
+
+Patch 8.2.1053
+Problem: Insufficient testing for 'statusline' and 'tabline'.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6333)
+Files: src/testdir/test_autocmd.vim, src/testdir/test_statusline.vim,
+ src/testdir/test_tabline.vim
+
+Patch 8.2.1054
+Problem: Not so easy to pass a lua function to Vim.
+Solution: Convert a Lua function and closure to a Vim funcref. (Prabir
+ Shrestha, closes #6246)
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/proto/userfunc.pro,
+ src/structs.h, src/testdir/test_lua.vim, src/userfunc.c
+
+Patch 8.2.1055
+Problem: No filetype set for pacman config files.
+Solution: Recognize pacman.conf and *.hook. (Guido Cella, closes #6335)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1056
+Problem: Wrong display when mixing match conceal and syntax conceal.
+Solution: Adjust how conceal flags are used. (closes #6327, closes #6303)
+Files: src/drawline.c, src/highlight.c,
+ src/testdir/test_matchadd_conceal.vim
+
+Patch 8.2.1057 (after 8.2.1054)
+Problem: Cannot build with dynamic Lua.
+Solution: Add dll variables.
+Files: src/if_lua.c
+
+Patch 8.2.1058
+Problem: Multiline conceal causes display errors.
+Solution: Do not allow conceal cross over EOL. (closes #6326, closes #4854,
+ closes #6302)
+Files: src/drawline.c, src/testdir/test_conceal.vim,
+ src/testdir/test_diffmode.vim
+
+Patch 8.2.1059
+Problem: Crash when using :tabonly in an autocommand. (Yegappan Lakshmanan)
+Solution: Do not allow the autocommand window to be closed.
+Files: src/ex_docmd.c, src/window.c, src/globals.h,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.1060
+Problem: Not all elinks files are recognized.
+Solution: Just check for "elinks.conf". (Guido Cella, closes #6337)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1061
+Problem: Insufficient testing for src/window.c.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6345)
+Files: src/testdir/test_excmd.vim, src/testdir/test_gf.vim,
+ src/testdir/test_options.vim, src/testdir/test_popupwin.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_tabpage.vim,
+ src/testdir/test_tagjump.vim, src/testdir/test_window_cmd.vim,
+ src/window.c
+
+Patch 8.2.1062
+Problem: Vim9: no line break allowed inside "cond ? val1 : val2".
+Solution: Check for operator after line break.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1063
+Problem: Vim9: no line break allowed before || or &&.
+Solution: Check for operator after line break.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1064
+Problem: Vim9: no line break allowed before comparators.
+Solution: Check for comparator after line break.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1065
+Problem: Vim9: no line break allowed inside a list.
+Solution: Handle line break inside a list in Vim9 script.
+Files: src/eval.c, src/proto/eval.pro, src/list.c, src/proto/list.pro,
+ src/vim9compile.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_arglist.vim
+
+Patch 8.2.1066
+Problem: Lua arrays are zero based.
+Solution: Make Lua arrays one based. (Prabir Shrestha, closes #6347)
+ Note: this is not backwards compatible.
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.1067
+Problem: Expression "!expr->func()" does not work.
+Solution: Apply plus and minus earlier. (closes #6348)
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
+ src/testdir/test_expr.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1068
+Problem: Vim9: no line break allowed inside a dict.
+Solution: Handle line break inside a dict in Vim9 script.
+Files: src/eval.c, src/dict.c, src/proto/dict.pro,
+ src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1069
+Problem: Vim9: fail to check for white space in list.
+Solution: Add check for white space.
+Files: src/list.c
+
+Patch 8.2.1070
+Problem: Vim9: leaking memory when lacking white space in dict.
+Solution: Clear the typval.
+Files: src/dict.c
+
+Patch 8.2.1071
+Problem: Vim9: no line break allowed inside a lambda.
+Solution: Handle line break inside a lambda in Vim9 script.
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
+ src/proto/userfunc.pro, src/popupwin.c, src/vim9compile.c,
+ src/ex_eval.c, src/globals.h, src/structs.h,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1072
+Problem: Missing libvterm test.
+Solution: Sync with libvterm revision 768.
+Files: src/libvterm/src/state.c, src/libvterm/t/63screen_resize.test
+
+Patch 8.2.1073
+Problem: Vim9: no line break allowed in () expression.
+Solution: Skip a line break.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1074
+Problem: Vim9: no line break allowed after some operators.
+Solution: Skip a line break after the operator. Add
+ eval_may_get_next_line() to simplify checking for a line break.
+Files: src/eval.c, src/proto/eval.pro, src/dict.c, src/list.c,
+ src/userfunc.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1075
+Problem: Vim9: no line break allowed in :echo expression.
+Solution: Skip linebreak.
+Files: src/eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1076
+Problem: Vim9: no line break allowed in :if expression.
+Solution: Skip linebreak.
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1077
+Problem: No enough test coverage for highlighting.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6351)
+Files: runtime/doc/syntax.txt, src/testdir/test_cmdline.vim,
+ src/testdir/test_highlight.vim, src/testdir/test_match.vim
+
+Patch 8.2.1078
+Problem: Highlight and match functionality together in one file.
+Solution: Move match functionality to a separate file. (Yegappan Lakshmanan,
+ closes #6352)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/highlight.c, src/match.c, src/proto.h,
+ src/proto/highlight.pro, src/proto/match.pro
+
+Patch 8.2.1079
+Problem: Vim9: no line break allowed in a while loop.
+Solution: Update stored loop lines when finding line breaks.
+Files: src/structs.h, src/globals.h, src/eval.c, src/evalvars.c,
+ src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1080
+Problem: Vim9: no line break allowed in a for loop.
+Solution: Skip line breaks in for command.
+Files: src/eval.c, src/ex_eval.c, src/proto/eval.pro, src/userfunc.c,
+ src/structs.h, src/globals.h, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1081
+Problem: Lua: cannot use table.insert() and table.remove().
+Solution: Add the list functions. (Prabir Shrestha, closes #6353)
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.1082
+Problem: Coverity complains about ignoring dict_add() return value.
+Solution: Add (void).
+Files: src/evalfunc.c
+
+Patch 8.2.1083
+Problem: Crash when using reduce() on a NULL list.
+Solution: Only access the list when not NULL.
+Files: src/list.c, src/testdir/test_listdict.vim
+
+Patch 8.2.1084
+Problem: Lua: registering function has useless code.
+Solution: Remove clearing grow arrays.
+Files: src/userfunc.c
+
+Patch 8.2.1085
+Problem: Coverity complains about ignoring dict_add() return value.
+Solution: Add (void).
+Files: src/register.c
+
+Patch 8.2.1086
+Problem: Possibly using freed memory when text properties used when
+ changing indent of a line.
+Solution: Compute the offset before calling ml_replace().
+Files: src/indent.c
+
+Patch 8.2.1087
+Problem: Possible memory leak when file expansion fails.
+Solution: Clear the grow array when returning FAIL. Use an error message
+ instead of an empty string.
+Files: src/filepath.c
+
+Patch 8.2.1088
+Problem: A very long translation might cause a buffer overflow.
+Solution: Truncate the message if needed.
+Files: src/fileio.c
+
+Patch 8.2.1089
+Problem: Coverity warns for pointer computation.
+Solution: Avoid computing a pointer to invalid memory.
+Files: src/spellfile.c
+
+Patch 8.2.1090
+Problem: May use NULL pointer when skipping over name.
+Solution: Always set ll_name_end.
+Files: src/eval.c
+
+Patch 8.2.1091
+Problem: No check if opening a pty works.
+Solution: Check for invalid file descriptor.
+Files: src/os_unix.c
+
+Patch 8.2.1092
+Problem: Not checking if saving for undo succeeds.
+Solution: Bail out if u_savesub() returns FAIL.
+Files: src/textprop.c
+
+Patch 8.2.1093
+Problem: Python: double free when adding item to dict fails.
+Solution: Remove vim_free() call.
+Files: src/if_py_both.h
+
+Patch 8.2.1094
+Problem: Dead code in libvterm.
+Solution: Remove condition that is always true.
+Files: src/libvterm/src/pen.c
+
+Patch 8.2.1095
+Problem: May use pointer after freeing it when text properties are used.
+Solution: Update redo buffer before calling ml_replace().
+Files: src/spellsuggest.c
+
+Patch 8.2.1096
+Problem: Vim9: return type of getqflist() is wrong.
+Solution: Let the return type depend on the arguments. Also for
+ getloclist(). (closes #6357)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1097
+Problem: Highlight code not sufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6359)
+Files: src/testdir/test_filter_cmd.vim, src/testdir/test_highlight.vim
+
+Patch 8.2.1098
+Problem: Vim9: cannot use line break in :throw argument.
+Solution: Check for line break.
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1099
+Problem: Vim9: cannot use line break in :cexpr argument.
+Solution: Check for line break.
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1100
+Problem: Vim9: cannot use line break in :execute, :echomsg and :echoerr
+ argument.
+Solution: Check for line break.
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1101
+Problem: No error when using wrong arguments for setqflist() or
+ setloclist().
+Solution: Check for the error.
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.1102
+Problem: Coverity gets confused by an unnecessary NULL check.
+Solution: Remove the check for NULL.
+Files: src/quickfix.c
+
+Patch 8.2.1103
+Problem: Coverity reports an unnecessary NULL check.
+Solution: Remove the check for NULL.
+Files: src/eval.c
+
+Patch 8.2.1104
+Problem: Coverity warns for possible NULL pointer use.
+Solution: Check "pbyts" is not NULL.
+Files: src/spellsuggest.c
+
+Patch 8.2.1105
+Problem: Insufficient test coverage for Lua.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6368) Fix uncovered
+ memory leak. Avoid unnecessary copy/free.
+Files: src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.1106
+Problem: Crash when trying to use s: variable in typed command.
+Solution: Don't use the script index when not set. (Ken Takata,
+ closes #6366)
+Files: src/vim9compile.c, src/testdir/test_vimscript.vim
+
+Patch 8.2.1107
+Problem: 'imactivatefunc' and 'imstatusfunc' are not used in the GUI.
+Solution: Adjust the #ifdefs. (closes #6367)
+Files: runtime/doc/options.txt, src/gui_xim.c,
+ src/testdir/test_iminsert.vim
+
+Patch 8.2.1108
+Problem: Mouse left-right scroll is not supported in terminal window.
+Solution: Implement mouse codes 6 and 7. (Trygve Aaberge, closes #6363)
+Files: src/libvterm/src/mouse.c, src/mouse.c, src/terminal.c,
+ src/testdir/mouse.vim, src/testdir/test_termcodes.vim
+
+Patch 8.2.1109 (after 8.2.1106)
+Problem: Still crashing when using s:variable.
+Solution: Remove assignment. (Ken Takata)
+Files: src/vim9compile.c
+
+Patch 8.2.1110
+Problem: Vim9: line continuation does not work in function arguments.
+Solution: Pass "evalarg" to get_func_tv(). Fix seeing double quoted string
+ as comment.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/eval.c, src/ex_eval.c,
+ src/list.c, src/dict.c, src/proto/eval.pro,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1111
+Problem: Inconsistent naming of get_list_tv() and eval_dict().
+Solution: Rename get_list_tv() to eval_list(). Similarly for eval_number(),
+ eval_string(), eval_lit_string() and a few others.
+Files: src/eval.c, src/list.c, src/proto/list.pro, src/vim9compile.c,
+ src/typval.c, src/proto/typval.pro, src/vim9script.c,
+ src/evalfunc.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/vim9execute.c
+
+Patch 8.2.1112
+Problem: Vim9: no line continuation allowed in method call.
+Solution: Handle line continuation in expression before method call.
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1113
+Problem: No test for verbose output of :call.
+Solution: Add a test.
+Files: src/testdir/test_user_func.vim
+
+Patch 8.2.1114
+Problem: Terminal test sometimes times out.
+Solution: Split the test in two parts.
+Files: src/testdir/Makefile, src/testdir/Make_all.mak,
+ src/testdir/term_util.vim, src/testdir/test_terminal.vim,
+ src/testdir/test_terminal2.vim
+
+Patch 8.2.1115
+Problem: Iminsert test fails when compiled with VIMDLL.
+Solution: Change condition. (Ken Takata, closes #6376)
+Files: src/testdir/test_iminsert.vim
+
+Patch 8.2.1116
+Problem: Vim9: parsing command checks for list twice.
+Solution: Adjust how a command is parsed.
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1117
+Problem: Coverity warns for using uninitialized field.
+Solution: Initialize v_lock.
+Files: src/if_lua.c
+
+Patch 8.2.1118
+Problem: Condition can never be true, dead code.
+Solution: Remove the dead code.
+Files: src/move.c
+
+Patch 8.2.1119
+Problem: Configure fails with Xcode 12 beta.
+Solution: use "return" instead of "exit()". (Nico Weber, closes #6381)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.1120
+Problem: Python code not tested properly.
+Solution: Add more tests and convert old-style test into new-style test.
+ (Yegappan Lakshmanan, closes #6370)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test86.in, src/testdir/test86.ok,
+ src/testdir/test_python2.vim
+
+Patch 8.2.1121
+Problem: Command completion not working after ++arg.
+Solution: Move skipping up. (Christian Brabandt, closes #6382)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.1122
+Problem: Vim9: line continuation in dict member not recognized.
+Solution: Check for line continuation.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1123
+Problem: Python 3 test is old style.
+Solution: Turn into new style test. (Yegappan Lakshmanan, closes #6385)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test87.in, src/testdir/test87.ok,
+ src/testdir/test_python2.vim, src/testdir/test_python3.vim
+
+Patch 8.2.1124
+Problem: Vim9: no line break allowed in :import command.
+Solution: Skip over line breaks.
+Files: src/vim9script.c, src/proto/vim9script.pro, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1125
+Problem: Vim9: double quote can be a string or a comment.
+Solution: Only support comments starting with # to avoid confusion.
+Files: src/eval.c, src/proto/eval.pro, src/dict.c, src/list.c,
+ src/vim9script.c
+
+Patch 8.2.1126
+Problem: Vim9: using :copen causes an error.
+Solution: Add flag LET_NO_COMMAND in set_var().
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1127
+Problem: Vim9: getting a dict member may not work.
+Solution: Clear the dict only after copying the item. (closes #6390)
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1128
+Problem: The write message mentions characters, but it's actually bytes.
+Solution: Change "C" to "B" and "characters" to "bytes".
+Files: runtime/doc/options.txt, src/fileio.c,
+ src/testdir/test_cscope.vim, src/testdir/test_netbeans.vim,
+ src/testdir/dumps/Test_diff_syntax_1.dump,
+ src/testdir/dumps/Test_long_file_name_1.dump,
+ src/testdir/dumps/Test_display_unprintable_01.dump,
+ src/testdir/dumps/Test_tselect_1.dump
+
+Patch 8.2.1129
+Problem: Vim9: bar not recognized after not compiled command.
+Solution: Check for bar for commands where this is possible. (closes #6391)
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1130
+Problem: Vim9: bar not recognized after function call
+Solution: Skip whitespace. (closes #6391)
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1131
+Problem: Vim9: error message for returning a value in a function that does
+ not return anything is not clear.
+Solution: Add a specific message.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1132
+Problem: Vim9: return type of repeat() is not specific enough.
+Solution: Return the type of the first argument. (closes #6395)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1133
+Problem: Vim9: return type of add() is not specific enough.
+Solution: Return the type of the first argument. (closes #6395)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1134
+Problem: Vim9: getting a list member may not work.
+Solution: Clear the list only after copying the item. (closes #6393)
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1135
+Problem: Vim9: getting a dict member may not work.
+Solution: Clear the dict only after copying the item.
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1136
+Problem: Vim9: return type of argv() is always any.
+Solution: Use list<string> if there is no argument.
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1137
+Problem: Vim9: modifiers not cleared after compiling function.
+Solution: Clear command modifiers. (closes #6396)
+Files: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/testdir/test_vim9_func.vim,
+ src/testdir/dumps/Test_vim9_silent_echo.dump
+
+Patch 8.2.1138
+Problem: Vim9: return type of copy() and deepcopy() is any.
+Solution: Use type of the argument.
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1139 (after 8.2.1137)
+Problem: Vim9: test for silent echo fails in some environments.
+Solution: Use :function instead of :def.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1140
+Problem: Vim9: return type of extend() is any.
+Solution: Use type of the argument.
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1141
+Problem: Vim9: return type of filter() is any.
+Solution: Use type of the argument.
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1142
+Problem: Vim9: return type of insert() is any.
+Solution: Use type of the first argument.
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1143
+Problem: Vim9: return type of remove() is any.
+Solution: Use the member type of the first argument, if known.
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1144
+Problem: Vim9: return type of reverse() is any.
+Solution: Use the type of the first argument.
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1145
+Problem: Vim9: "for" only accepts a list at compile time.
+Solution: Also accept a list at runtime.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1146
+Problem: Not enough testing for Python.
+Solution: Add more tests. Fix uncovered problems. (Yegappan Lakshmanan,
+ closes #6392)
+Files: src/if_py_both.h, src/if_python3.c, src/testdir/shared.vim,
+ src/testdir/test_python2.vim, src/testdir/test_python3.vim
+
+Patch 8.2.1147
+Problem: :confirm may happen in cooked mode. (Jason Franklin)
+Solution: Switch to raw mode before prompting. (Brandon Pfeifer)
+Files: src/message.c, src/testdir/test_excmd.vim
+
+Patch 8.2.1148
+Problem: Warning for using int instead of size_t.
+Solution: Change "len" argument to size_t. (Mike Williams)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9script.c
+
+Patch 8.2.1149
+Problem: Vim9: :eval command not handled properly.
+Solution: Compile the :eval command. (closes #6408)
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1150
+Problem: ml_get error when using Python. (Yegappan Lakshmanan)
+Solution: Check the line number is not out of range. Call "Check" with
+ "fromObj" instead of "from".
+Files: src/if_py_both.h, src/testdir/test_python2.vim,
+ src/testdir/test_python3.vim
+
+Patch 8.2.1151
+Problem: Insufficient test coverage for Python.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #6415)
+Files: src/testdir/test_python2.vim, src/testdir/test_python3.vim
+
+Patch 8.2.1152
+Problem: Vim9: function reference is missing script prefix.
+Solution: Use the actual function name instead of the name searched for in
+ the script context. (closes #6412)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1153
+Problem: Vim9: script test fails on some systems.
+Solution: Return proper value from Compare().
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1154
+Problem: Vim9: crash when using imported function.
+Solution: Check for a function type. Set the script context when calling a
+ function. (closes #6412)
+Files: src/evalvars.c, src/scriptfile.c, src/proto/scriptfile.pro,
+ src/vim9execute.c, src/structs.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1155
+Problem: Vim9: cannot handle line break inside lambda.
+Solution: Pass the compilation context through. (closes #6407, closes #6409)
+Files: src/structs.h, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/eval.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1156
+Problem: Vim9: No error for invalid command in compiled function.
+Solution: Handle CMD_SIZE.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1157
+Problem: Vim9: dict.name is not recognized as an expression.
+Solution: Recognize ".name". (closes #6418)
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1158 (after 8.2.1155)
+Problem: Build error.
+Solution: Add missing change to globals.
+Files: src/globals.h
+
+Patch 8.2.1159
+Problem: Vim9: no error for missing space after a comma.
+Solution: Check for white space.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1160
+Problem: Vim9: memory leak in allocated types.
+Solution: Free the type pointers.
+Files: src/vim9script.c, src/userfunc.c, src/vim9compile.c,
+ src/proto/vim9compile.pro
+
+Patch 8.2.1161
+Problem: Vim9: using freed memory.
+Solution: Put pointer back in evalarg instead of freeing it.
+Files: src/userfunc.c, src/vim9compile.c, src/eval.c, src/proto/eval.pro,
+ src/structs.h
+
+Patch 8.2.1162
+Problem: Crash when using a lambda.
+Solution: Check for evalarg to be NULL.
+Files: src/userfunc.c
+
+Patch 8.2.1163 (after 8.2.1161)
+Problem: Build error.
+Solution: Add missing change to globals.
+Files: src/globals.h
+
+Patch 8.2.1164
+Problem: Text cleared by checking terminal properties not redrawn. (Alexey
+ Radkov)
+Solution: Mark the screen characters as invalid. (closes #6422)
+Files: src/screen.c, src/proto/screen.pro, src/term.c
+
+Patch 8.2.1165
+Problem: Insufficient testing for the Tcl interface.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #6423)
+Files: src/testdir/test_tcl.vim
+
+Patch 8.2.1166
+Problem: Once mouse move events are enabled getchar() returns them.
+Solution: Ignore K_MOUSEMOVE in getchar(). (closes #6424)
+Files: runtime/doc/eval.txt, src/getchar.c
+
+Patch 8.2.1167
+Problem: Vim9: builtin function method call only supports first argument.
+Solution: Shift arguments when needed. (closes #6305, closes #6419)
+Files: src/evalfunc.c, src/vim9compile.c, src/vim9execute.c,
+ src/vim9.h, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1168
+Problem: Wrong method argument for appendbufline().
+Solution: Use FEARG_3.
+Files: src/evalfunc.c
+
+Patch 8.2.1169
+Problem: Write NUL past allocated space using corrupted spell file.
+ (Markus Vervier)
+Solution: Init "c" every time.
+Files: src/spellfile.c
+
+Patch 8.2.1170
+Problem: Cursor off by one with block paste while 'virtualedit' is "all".
+Solution: Adjust condition. (Hugo Gualandi, closes #6430)
+Files: src/register.c, src/testdir/test_registers.vim
+
+Patch 8.2.1171
+Problem: Possible crash when out of memory.
+Solution: Check for NULL pointer. (Dominique Pellé, closes #6432)
+Files: src/syntax.c
+
+Patch 8.2.1172
+Problem: Error messages when doing "make clean" in the runtime/doc or
+ src/tee directories.
+Solution: Use "rm -f".
+Files: runtime/doc/Makefile, src/tee/Makefile
+
+Patch 8.2.1173
+Problem: Tee doesn't build on some systems.
+Solution: Include header files. (Dominique Pelle, closes #6431)
+Files: src/tee/tee.c
+
+Patch 8.2.1174
+Problem: No test for the "recording @x" message.
+Solution: Add a test. (Dominique Pellé, closes #6427)
+Files: src/testdir/test_registers.vim
+
+Patch 8.2.1175
+Problem: Vim9: Cannot split a line before ".member".
+Solution: Check for ".member" after line break.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1176
+Problem: Vim9: not enough type checking in Vim9 script.
+Solution: Use same type checking as in a :def function.
+Files: src/vim9compile.c, src/proto/vim9compile.pro,
+ src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1177
+Problem: Terminal2 test sometimes hangs in the GUI.
+Solution: Move some tests to other files to further locate the problem.
+ Set the GUI to a fixed screen size.
+Files: src/testdir/test_terminal.vim, src/testdir/test_terminal2.vim,
+ src/testdir/test_terminal3.vim, src/testdir/Make_all.mak,
+ src/testdir/runtest.vim
+
+Patch 8.2.1178
+Problem: Vim9: filter function recognized as command modifier, leading to a
+ crash.
+Solution: Clear cmdmod after freeing items. Do not recognize a command
+ modifier followed by non-white space. (closes #6434)
+Files: src/ex_docmd.c, src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1179
+Problem: Test_termwinscroll() sometimes hangs in the GUI.
+Solution: Skip the test in the GUI.
+Files: src/testdir/test_terminal2.vim
+
+Patch 8.2.1180
+Problem: Build failure in small version.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.1181
+Problem: Json code not fully tested.
+Solution: Add more test coverage. (Dominique Pellé, closes #6433)
+Files: src/testdir/test_json.vim
+
+Patch 8.2.1182
+Problem: Vim9: no check for whitespace after comma in lambda.
+Solution: Give error if white space is missing.
+Files: src/userfunc.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1183
+Problem: assert_fails() checks the last error message.
+Solution: Check the first error, it is more relevant. Fix all the tests
+ that rely on the old behavior.
+Files: runtime/doc/testing.txt, src/message.c, src/globals.h,
+ src/testing.c, src/testdir/test_autocmd.vim,
+ src/testdir/test_buffer.vim, src/testdir/test_cd.vim,
+ src/testdir/test_channel.vim, src/testdir/test_clientserver.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_cpoptions.vim,
+ src/testdir/test_cscope.vim, src/if_cscope.c,
+ src/testdir/test_excmd.vim, src/evalvars.c,
+ src/testdir/test_expr.vim, src/testdir/test_functions.vim,
+ src/testdir/test_json.vim, src/testdir/test_let.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_listener.vim,
+ src/testdir/test_match.vim, src/testdir/test_menu.vim,
+ src/testdir/test_method.vim, src/testdir/test_normal.vim,
+ src/testdir/test_popup.vim, src/testdir/test_python2.vim,
+ src/testdir/test_python3.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_random.vim, src/testdir/test_search.vim,
+ src/testdir/test_signs.vim, src/testdir/test_spell.vim,
+ src/testdir/test_substitute.vim, src/testdir/test_syntax.vim,
+ src/testdir/test_tagjump.vim, src/testdir/test_taglist.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_textprop.vim,
+ src/testdir/test_trycatch.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim, src/testdir/test_viminfo.vim,
+ src/testdir/test_winbuf_close.vim,
+ src/testdir/test_window_cmd.vim, src/testdir/test_writefile.vim,
+ src/testdir/test_regexp_latin.vim, src/testdir/test_utf8.vim,
+ src/testdir/test_global.vim, src/testdir/test_tagfunc.vim
+
+Patch 8.2.1184 (after 8.2.1183)
+Problem: Some tests fail.
+Solution: Adjust tests for different assert_fails() behavior. Remove unused
+ variable.
+Files: src/testdir/test_assert.vim, src/testdir/test_eval_stuff.vim,
+ src/evalvars.c
+
+Patch 8.2.1185 (after 8.2.1183)
+Problem: Some other tests fail.
+Solution: Adjust tests for different assert_fails() behavior.
+Files: src/testdir/test_lua.vim, src/testdir/test_tcl.vim
+
+Patch 8.2.1186
+Problem: With SGR mouse codes balloon doesn't show up after click.
+Solution: Add the MOUSE_RELEASE bits to mouse_code.
+Files: src/mouse.c
+
+Patch 8.2.1187
+Problem: Terminal2 test sometimes hangs in the GUI on Travis.
+Solution: Disable Test_zz2_terminal_guioptions_bang() for now.
+Files: src/testdir/test_terminal2.vim
+
+Patch 8.2.1188
+Problem: Memory leak with invalid json input.
+Solution: Free all keys at the end. (Dominique Pellé, closes #6443,
+ closes #6442)
+Files: src/json.c, src/testdir/test_json.vim
+
+Patch 8.2.1189
+Problem: Vim9: line continuation in lambda doesn't always work.
+Solution: Do not use a local evalarg unless there isn't one. (closes #6439)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1190
+Problem: Vim9: checking for Vim9 syntax is spread out.
+Solution: Use in_vim9script().
+Files: src/vim9script.c, src/dict.c, src/eval.c, src/evalvars.c,
+ src/ex_docmd.c, src/list.c, src/scriptfile.c, src/userfunc.c
+
+Patch 8.2.1191
+Problem: Vim9: crash when function calls itself.
+Solution: Add status UF_COMPILING. (closes #6441)
+Files: src/structs.h, src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1192
+Problem: Lua test fails with older Lua version.
+Solution: Adjust expected error messages. (closes #6444)
+Files: src/testdir/test_lua.vim
+
+Patch 8.2.1193
+Problem: Terminal window not redrawn when dragging a popup window over it.
+Solution: Redraw terminal window. (fixes #6438)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_term_01.dump,
+ src/testdir/dumps/Test_popupwin_term_02.dump
+
+Patch 8.2.1194
+Problem: Test failure because shell prompt differs.
+Solution: Set the shell prompt.
+Files: src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_term_01.dump,
+ src/testdir/dumps/Test_popupwin_term_02.dump
+
+Patch 8.2.1195
+Problem: Clientserver test fails on MS-Windows.
+Solution: Expect a different error message.
+Files: src/testdir/test_clientserver.vim
+
+Patch 8.2.1196
+Problem: Build failure with normal features.
+Solution: Add #ifdef.
+Files: src/popupwin.c
+
+Patch 8.2.1197
+Problem: Clientserver test still fails on MS-Windows.
+Solution: Expect a different error message.
+Files: src/testdir/test_clientserver.vim
+
+Patch 8.2.1198
+Problem: Terminal2 test sometimes hangs in the GUI on Travis.
+Solution: Move test function to terminal3 to see if the problem moves too.
+Files: src/testdir/test_terminal2.vim, src/testdir/test_terminal3.vim
+
+Patch 8.2.1199
+Problem: Not all assert functions are fully tested.
+Solution: Test more assert functions.
+Files: src/testing.c, src/testdir/test_assert.vim
+
+Patch 8.2.1200
+Problem: Vim9: cannot disassemble a lambda function.
+Solution: Recognize "<lambda>123" as a function name.
+Files: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1201
+Problem: Vim9: crash when passing number as dict key.
+Solution: Check key type to be string. (closes #6449)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1202
+Problem: Vim9: crash when calling a closure from a builtin function.
+Solution: Use the current execution context. (closes #6441)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1203
+Problem: Unused assignments in expression evaluation.
+Solution: Move declarations and assignments to inner blocks where possible.
+Files: src/eval.c
+
+Patch 8.2.1204
+Problem: Vim9: true and false not recognized in Vim9 script.
+Solution: Recognize true and false.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1205
+Problem: Vim9: && and || work differently when not compiled.
+Solution: Keep the value.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1206
+Problem: Vim9: crash in expr test when run in the GUI.
+Solution: Temporarily comment out two test lines.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1207
+Problem: Vim9: crash in expr test when run in the GUI.
+Solution: Break out of loop over hashtab also when function got removed and
+ added.
+Files: src/userfunc.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1208
+Problem: Build failure.
+Solution: Add missing change.
+Files: src/structs.h
+
+Patch 8.2.1209
+Problem: Vim9: test failure.
+Solution: Add missing changes to hashtab.
+Files: src/hashtab.c
+
+Patch 8.2.1210
+Problem: Using ht_used when looping through a hashtab is less reliable.
+Solution: Use ht_changed in a few more places.
+Files: src/userfunc.c, src/if_py_both.h
+
+Patch 8.2.1211 (after 8.2.1118)
+Problem: Removed more than dead code.
+Solution: Put back the decrement.
+Files: src/move.c, src/testdir/test_diffmode.vim
+
+Patch 8.2.1212
+Problem: Cannot build with Lua 5.4.
+Solution: Use luaL_typeerror instead defining it. (closes #6454)
+Files: src/if_lua.c
+
+Patch 8.2.1213
+Problem: Mouse codes not tested sufficiently.
+Solution: Add more tests for mouse codes. (closes #6436)
+Files: src/testdir/test_termcodes.vim
+
+Patch 8.2.1214
+Problem: MS-Windows: default _vimrc not correct in silent install mode.
+Solution: Add the LoadDefaultVimrc macro. (Ken Takata, closes #6451)
+Files: nsis/gvim.nsi
+
+Patch 8.2.1215
+Problem: Atari MiNT support is outdated.
+Solution: Nobody responded this code is still useful, so let's delete it.
+Files: Filelist, src/os_mint.h, src/vim.h, src/Make_mint.mak,
+ src/digraph.c, src/fileio.c, src/memfile.c, src/os_unix.c,
+ src/term.c, READMEdir/README_extra.txt, runtime/doc/os_mint.txt,
+ src/INSTALL
+
+Patch 8.2.1216
+Problem: Startup test fails.
+Solution: Adjust expected values for deleted lines.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.1217
+Problem: Startup test depends on random source file.
+Solution: Write a test file to find quickfix errors in.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.1218
+Problem: Vim9: cannot use 'text'->func().
+Solution: Recognize string at start of command.
+Files: src/vim9compile.c, src/ex_docmd.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1219
+Problem: Symlink not followed if dirname ends in //.
+Solution: Resolve symlink earlier. (Tomáš Janoušek, closes #6454)
+Files: src/memline.c, src/testdir/test_swap.vim
+
+Patch 8.2.1220
+Problem: memory access error when dragging a popup window over a buffer
+ with folding.
+Solution: Avoid going over the end of the cache. (closes #6438)
+Files: src/mouse.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_term_01.dump,
+ src/testdir/dumps/Test_popupwin_term_02.dump,
+ src/testdir/dumps/Test_popupwin_term_03.dump,
+ src/testdir/dumps/Test_popupwin_term_04.dump
+
+Patch 8.2.1221
+Problem: Memory leak when updating popup window.
+Solution: Clear search highlighting.
+Files: src/popupwin.c
+
+Patch 8.2.1222
+Problem: When using valgrind a Vim command started by a test uses the same
+ log file name which gets overwritten.
+Solution: Fix regexp to rename the log file.
+Files: src/testdir/shared.vim
+
+Patch 8.2.1223
+Problem: Vim9: invalid type error for function default value.
+Solution: Use right argument index. (closes #6458)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1224
+Problem: Vim9: arguments from partial are not used.
+Solution: Put the partial arguments on the stack. (closes #6460)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1225
+Problem: Linker errors when building with dynamic Python 3.9.
+Solution: Add #defined items. (closes #6461)
+Files: src/if_python3.c
+
+Patch 8.2.1226
+Problem: MS-Windows: windows positioning wrong when the taskbar is placed
+ at the top or left of the screen.
+Solution: Use GetWindowRect and MoveWindow APIs. (Yukihiro Nakadaira,
+ Ken Takata, closes #6455)
+Files: src/gui_w32.c
+
+Patch 8.2.1227
+Problem: Vim9: allowing both quoted and # comments is confusing.
+Solution: Only support # comments in Vim9 script.
+Files: runtime/doc/vim9.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/vim9compile.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1228
+Problem: Scrollbars not flush against the window edges when maximised.
+Solution: Add padding. (Ken Takata, closes #5602, closes #6466)
+Files: src/gui.c, src/gui_athena.c, src/gui_gtk.c, src/gui_haiku.cc,
+ src/gui_mac.c, src/gui_motif.c, src/gui_photon.c, src/gui_w32.c,
+ src/proto/gui_athena.pro, src/proto/gui_gtk.pro,
+ src/proto/gui_haiku.pro, src/proto/gui_mac.pro,
+ src/proto/gui_motif.pro, src/proto/gui_photon.pro,
+ src/proto/gui_w32.pro
+
+Patch 8.2.1229
+Problem: Build error without the eval feature.
+Solution: Declare starts_with_colon. Make function local.
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro
+
+Patch 8.2.1230
+Problem: Vim9: list index error not caught by try/catch.
+Solution: Do not bail out if an error is inside try/catch. (closes #6462)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1231
+Problem: MS-Windows: GUI code can be cleaned up.
+Solution: Do a bit of cleaning up. (Ken Takata, closes #6465)
+Files: src/gui_w32.c, src/proto/gui_w32.pro
+
+Patch 8.2.1232
+Problem: MS-Windows GUI: Snap cancelled by split command.
+Solution: Do not cancel Snap when splitting a window. (Ken Takata,
+ closes #6467)
+Files: src/gui_w32.c
+
+Patch 8.2.1233
+Problem: Vim9: various errors not caught by try/catch.
+Solution: Do not bail out if an error is inside try/catch.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1234
+Problem: Lua build problem with old compiler.
+Solution: Move declarations to start of the block. (Taro Muraoka,
+ closes #6477)
+Files: src/if_lua.c
+
+Patch 8.2.1235
+Problem: Not all mouse codes covered by tests.
+Solution: Add more tests for the mouse. (Yegappan Lakshmanan, closes #6472)
+Files: src/testdir/mouse.vim, src/testdir/test_termcodes.vim
+
+Patch 8.2.1236
+Problem: Vim9: a few errors not caught by try/catch.
+Solution: Do not bail out if an error is inside try/catch. Fix that a not
+ matching catch doesn't jump to :endtry.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1237
+Problem: Changing 'completepopup' after opening a popup has no effect. (Jay
+ Sitter)
+Solution: Close the popup when the options are changed. (closes #6471)
+Files: runtime/doc/options.txt, src/popupwin.c, src/proto/popupwin.pro,
+ src/optionstr.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_infopopup_8.dump
+
+Patch 8.2.1238
+Problem: Vim9: a few remaining errors not caught by try/catch.
+Solution: Do not bail out if an error is inside try/catch.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1239
+Problem: "maxwidth" in 'completepopup' not obeyed. (Jay Sitter)
+Solution: Add separate field for value from option. (closes #6470)
+Files: src/structs.h, src/popupwin.c, src/popupmenu.c,
+ src/testdir/dumps/Test_popupwin_infopopup_9.dump
+
+Patch 8.2.1240
+Problem: GUI tests sometimes fail because of translations.
+Solution: Reload the menus without translation. (Taro Muraoka, closes #6486)
+Files: src/testdir/runtest.vim
+
+Patch 8.2.1241
+Problem: Cannot use getbufinfo() as a method.
+Solution: Support using getbufinfo() as a method. (closes #6458)
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_bufwintabinfo.vim
+
+Patch 8.2.1242
+Problem: Vim9: no error if calling a function with wrong argument type.
+Solution: Check types of arguments. (closes #6469)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1243
+Problem: Vim9: cannot have a comment or empty line halfway a list at script
+ level.
+Solution: Skip more than one line if needed.
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/eval.c,
+ src/scriptfile.c
+
+Patch 8.2.1244
+Problem: Vim9: in lambda index assumes a list.
+Solution: Use the value type to decide about list or dict. (closes #6479)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1245
+Problem: Build failure in tiny version.
+Solution: Add #ifdef.
+Files: src/scriptfile.c
+
+Patch 8.2.1246
+Problem: Vim9: comment after assignment doesn't work.
+Solution: Skip over white space. (closes #6481)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1247
+Problem: Vim9: cannot index a character in a string.
+Solution: Add ISN_STRINDEX instruction. (closes #6478)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1248
+Problem: Netbeans test is flaky in the GUI.
+Solution: Filter out geometry messages. (Taro Muraoka, closes #6487)
+Files: src/testdir/test_netbeans.vim
+
+Patch 8.2.1249
+Problem: Vim9: disassemble test fails.
+Solution: Change INDEX to LISTINDEX. Add test for STRINDEX.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1250
+Problem: Vim9: cannot use the g:, b:, t: and w: namespaces.
+Solution: Add instructions to push a dict for the namespaces. (closes #6480)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1251
+Problem: Vim9: warning for pointer usage, test failure undetected.
+Solution: Fix pointer indirection. Give error when executing function
+ failed for any reason. Fix instruction names.
+Files: src/vim9execute.c, src/userfunc.c, src/proto/userfunc.pro
+
+Patch 8.2.1252
+Problem: ":marks" may show '< and '> mixed up.
+Solution: Show the mark position as where '< and '> would jump.
+Files: src/mark.c, src/testdir/test_marks.vim
+
+Patch 8.2.1253
+Problem: CTRL-K in Insert mode gets <CursorHold> inserted. (Roland
+ Puntaier)
+Solution: Do not reset did_cursorhold, restore it. (closes #6447)
+Files: src/normal.c
+
+Patch 8.2.1254
+Problem: MS-Windows: regexp test may fail if 'iskeyword' set wrongly.
+Solution: Override the 'iskeyword' value. (Taro Muraoka, closes #6502)
+Files: src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.1255
+Problem: Cannot use a lambda with quickfix functions.
+Solution: Add support for lambda. (Yegappan Lakshmanan, closes #6499)
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/quickfix.txt, src/channel.c, src/evalvars.c,
+ src/optionstr.c, src/proto/evalvars.pro, src/proto/quickfix.pro,
+ src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.1256
+Problem: Vim9: type wrong after getting dict item in lambda.
+Solution: Set the type to "any" after enforcing dict type. (closes #6491)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1257
+Problem: Vim9: list unpack doesn't work at the script level.
+Solution: Detect unpack assignment better. (closes #6494)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1258 (after 8.2.1253)
+Problem: CursorHold does not work well.a (Shane-XB-Qian)
+Solution: Only restore did_cursorhold when using :normal.
+Files: src/normal.c
+
+Patch 8.2.1259
+Problem: Empty group in 'tabline' may cause using an invalid pointer.
+Solution: Set the group start position. (closes #6505)
+Files: src/buffer.c, src/testdir/test_tabline.vim
+
+Patch 8.2.1260
+Problem: There is no good test for CursorHold.
+Solution: Add a test. Remove duplicated test. (Yegappan Lakshmanan,
+ closes #6503)
+Files: src/testdir/test_autocmd.vim, src/testdir/test_buffer.vim,
+ src/testdir/test_normal.vim
+
+Patch 8.2.1261
+Problem: Vim9: common type of function not tested.
+Solution: Add a test. Fix uncovered problems.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1262
+Problem: src/ex_cmds.c file is too big.
+Solution: Move help related code to src/help.c. (Yegappan Lakshmanan,
+ closes #6506)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/cmdexpand.c, src/ex_cmds.c, src/help.c, src/proto.h,
+ src/proto/ex_cmds.pro, src/proto/help.pro
+
+Patch 8.2.1263
+Problem: Vim9: comparators use 'ignorecase' in Vim9 script.
+Solution: Ignore 'ignorecase'. Use true and false instead of 1 and 0.
+ (closes #6497)
+Files: src/eval.c, src/typval.c, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1264
+Problem: Terminal getwinpos() test is a bit flaky.
+Solution: Call getwinpos() a bit later.
+Files: src/testdir/test_terminal3.vim
+
+Patch 8.2.1265
+Problem: Crash with EXITFREE when split() fails.
+Solution: Restore 'cpoptions'.
+Files: src/evalfunc.c
+
+Patch 8.2.1266 (after 8.2.1262)
+Problem: Makefile preference were accidentally included.
+Solution: Revert the Makefile changes.
+Files: src/Makefile
+
+Patch 8.2.1267
+Problem: MS-Windows: tests may fail due to $PROMPT value.
+Solution: Set $PROMPT for testing. (Taro Muraoka, closes #6510)
+Files: src/testdir/runtest/vim
+
+Patch 8.2.1268
+Problem: Vim9: no error for using double quote comment after :func or :def.
+Solution: Only accept double quote when not in Vim9 script and not after
+ :def. (closes #6483)
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1269
+Problem: Language and locale code spread out.
+Solution: Move relevant code to src/locale.c. (Yegappan Lakshmanan,
+ closes #6509)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/ex_cmds2.c, src/locale.c, src/main.c, src/proto.h,
+ src/proto/ex_cmds2.pro, src/proto/locale.pro
+
+Patch 8.2.1270
+Problem: Vim9: not skipping over function type declaration with only a
+ return type.
+Solution: Skip over the return type. (issue #6507)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1271
+Problem: Vim9: Error for Funcref function argument type.
+Solution: Find the actual function type if possible. (issue #6507)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1272
+Problem: Vim9: type not checked if declaration also assigns value.
+Solution: Check the type. (issue #6507)
+Files: src/eval.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/vim9script.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1273
+Problem: MS-Windows: terminal test may leave file behind.
+Solution: Wait a moment for process to end before deleting the file.
+ (Taro Muraoka, closes #6513)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.1274
+Problem: Vim9: no error for missing white space in assignment at script
+ level.
+Solution: Check for white space. (closes #6495)
+Files: src/eval.c, src/evalvars.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_let.vim
+
+Patch 8.2.1275
+Problem: Vim9: compiler warning for buffer size.
+Solution: Change the offset from 10 to 15. (Dominique Pellé, closes #6518)
+Files: src/vim9script.c
+
+Patch 8.2.1276
+Problem: MS-Windows: system test may fail if more.exe is installed.
+Solution: Explicitly use more.com. (Taro Muraoka, Ken Takata, closes #6517)
+Files: src/testdir/test_system.vim
+
+Patch 8.2.1277
+Problem: Tests on Travis do not run with EXITFREE.
+Solution: Add EXITFREE to all builds to uncover any mistakes.
+Files: .travis.yml
+
+Patch 8.2.1278
+Problem: Vim9: line break after "->" only allowed in :def function.
+Solution: Only allow line break after "->". (closes #6492)
+Files: src/vim9compile.c, src/globals.h, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1279
+Problem: Some tests on Travis have EXITFREE duplicated.
+Solution: Remove EXITFREE from shadowopt. Add "shadow" to job name.
+Files: .travis.yml
+
+Patch 8.2.1280
+Problem: Ex command error cannot contain an argument.
+Solution: Add ex_errmsg() and translate earlier. Use e_trailing_arg where
+ possible.
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/buffer.c,
+ src/ex_eval.c, src/match.c, src/testdir/test_tabpage.vim
+
+Patch 8.2.1281
+Problem: The "trailing characters" error can be hard to understand.
+Solution: Add the trailing characters to the message.
+Files: src/cmdhist.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
+ src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c, src/json.c,
+ src/menu.c, src/quickfix.c, src/sign.c, src/userfunc.c
+
+Patch 8.2.1282
+Problem: Vim9: crash when using CheckScriptFailure() in
+ Test_vim9script_call_fail_decl().
+Solution: Do not decrement the def_functions len unless the function was
+ newly added.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1283
+Problem: Vim9: error for misplaced -> lacks argument.
+Solution: Use the pointer before it was advanced.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1284
+Problem: Vim9: skipping over type includes following white space, leading
+ to an error for missing white space.
+Solution: Do not skip over white space after the type.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1285
+Problem: Vim9: argument types are not checked on assignment.
+Solution: Check function argument types. (issue #6507)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1286
+Problem: Vim9: No error when using a type on a window variable
+Solution: Recognize the syntax and give an error. (closes #6521)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1287
+Problem: Vim9: crash when using an imported function.
+Solution: Add the function type to the imported entry. (closes #6522)
+Files: src/vim9script.c, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1288
+Problem: Vim9: cannot use mark in range.
+Solution: Use the flag that a colon was seen. (closes #6528)
+Files: src/ex_docmd.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1289
+Problem: Crash when using a custom completion function.
+Solution: Initialize all of the expand_T. (closes #6532)
+Files: src/cmdexpand.c
+
+Patch 8.2.1290
+Problem: Vim9: cannot replace a global function.
+Solution: Allow for "!" on a global function. (closes #6524) Also fix that
+ :delfunc on a :def function only made it empty.
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1291
+Problem: Vim9: type of varargs items is not checked.
+Solution: Check the list item types. (closes #6523)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1292
+Problem: AIDL filetype not recognized.
+Solution: Add filetype detection. (Dominique Pellé, closes #6533)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1293
+Problem: Vim9: :execute mixes up () expression and function call.
+Solution: Do not skip white space when looking for the "(". (closes #6531)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1294
+Problem: Vim9: error when using vim9script in TextYankPost.
+Solution: Use EX_LOCKOK instead of the EX_CMDWIN flag for command that can
+ be used when text is locked. (closes #6529)
+Files: src/ex_cmds.h, src/ex_docmd.c
+
+Patch 8.2.1295
+Problem: Tests 44 and 99 are old style.
+Solution: Convert to new style tests. (Yegappan Lakshmanan, closes #6536)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test44.in, src/testdir/test44.ok,
+ src/testdir/test99.in, src/testdir/test99.ok,
+ src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.1296
+Problem: Some part of using 'smartcase' was not tested.
+Solution: Add more tests. (Dominique Pellé, closes #6538)
+Files: src/testdir/test_search.vim
+
+Patch 8.2.1297
+Problem: When a test fails it's often not easy to see what the call stack
+ is.
+Solution: Add more entries from the call stack in the exception message.
+Files: runtime/doc/cmdline.txt, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/debugger.c, src/ex_docmd.c,
+ src/ex_eval.c, src/message.c, src/testing.c,
+ src/testdir/test_expand_func.vim
+
+Patch 8.2.1298
+Problem: Compiler warning for unused argument in small version.
+Solution: Add UNUSED.
+Files: src/scriptfile.c
+
+Patch 8.2.1299
+Problem: Compiler warning for using size_t for int and void pointer.
+Solution: Add type casts.
+Files: src/scriptfile.c
+
+Patch 8.2.1300
+Problem: Vim9: optional argument type not parsed properly.
+Solution: Skip over the "?". (issue #6507)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/evalvars.c,
+ src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1301
+Problem: Vim9: varargs argument type not parsed properly.
+Solution: Skip over the "...". (issue #6507)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1302
+Problem: Vim9: varargs arg after optional arg does not work
+Solution: Check for the "..." first. (issue #6507)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1303
+Problem: Calling popup_setoptions() resets 'signcolumn'.
+Solution: Only set 'signcolumn' when creating the popup. (closes #6542)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1304
+Problem: Debug backtrace isn't tested much.
+Solution: Add more specific tests. (Ben Jackson, closes #6540)
+Files: src/testdir/runtest.vim, src/testdir/test_debugger.vim
+
+Patch 8.2.1305
+Problem: Some tests are still old style.
+Solution: Convert tests 52 and 70 to new style. (Yegappan Lakshmanan,
+ closes #6544) Fix error in FinishTesting().
+Files: src/testdir/runtest.vim, src/Makefile, src/testdir/Make_all.mak,
+ src/testdir/Make_amiga.mak, src/testdir/Make_vms.mms,
+ src/testdir/test52.in, src/testdir/test52.ok,
+ src/testdir/test70.in, src/testdir/test70.ok,
+ src/testdir/test_mzscheme.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.1306
+Problem: Checking for first character of dict key is inconsistent.
+Solution: Add eval_isdictc(). (closes #6546)
+Files: src/eval.c, src/proto/eval.pro, src/vim9compile.c,
+ src/testdir/test_listdict.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_let.vim
+
+Patch 8.2.1307
+Problem: popup window width does not include number, fold of sign column
+ width.
+Solution: Take number, fold and sign column with into account.
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_sign_2.dump
+
+Patch 8.2.1308
+Problem: Vim9: accidentally using "x" causes Vim to exit.
+Solution: Disallow using ":x" or "xit" in Vim9 script. (closes #6399)
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/ex_docmd.c, src/ex_cmds.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1309
+Problem: Build failure with tiny version.
+Solution: Add #ifdef.
+Files: src/ex_cmds.c, src/ex_docmd.c
+
+Patch 8.2.1310
+Problem: Configure with Xcode 12 fails to check for tgetent.
+Solution: Declare tgetent(). (Ozaki Kiichi, closes #6558)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.1311
+Problem: Test failures with legacy Vim script.
+Solution: Actually check for Vim9 script.
+Files: src/vim9script.c
+
+Patch 8.2.1312
+Problem: MS-Windows: terminal test may fail if dir.exe exists.
+Solution: Use dir.com. (Ken Takata, closes #6557)
+Files: src/testdir/test_terminal3.vim
+
+Patch 8.2.1313
+Problem: Vim9 script: cannot assign to environment variable.
+Solution: Recognize environment variable assignment. (closes #6548)
+ Also options and registers.
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1314
+Problem: Vim9: rule for comment after :function is confusing.
+Solution: Allow double quoted comment after :function in vim9script.
+ (closes #6556)
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1315
+Problem: MS-Windows: test log contains escape sequences.
+Solution: Do not use t_md and t_me but ANSI escape sequences. (Ken Takata,
+ closes #6559)
+Files: src/testdir/runtest.vim
+
+Patch 8.2.1316
+Problem: Test 42 is still old style.
+Solution: Turn it into a new style test. (Yegappan Lakshmanan, closes #6561)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_dos.mak,
+ src/testdir/Make_ming.mak, src/testdir/Make_vms.mms,
+ src/testdir/test42.in, src/testdir/test42.ok,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.1317
+Problem: MS-Windows tests on AppVeyor are slow.
+Solution: Use GitHub Actions. (Ken Takata, closes #6569)
+Files: Filelist, .github/workflows/ci-windows.yaml, appveyor.yml,
+ ci/appveyor.bat
+
+Patch 8.2.1318
+Problem: No status badge for Github CI.
+Solution: Add a badge.
+Files: README.md
+
+Patch 8.2.1319
+Problem: Status badge for Github CI has wrong link.
+Solution: Rename and use the right link
+Files: README.md, .github/workflows/ci-windows.yaml
+
+Patch 8.2.1320
+Problem: Vim9: cannot declare some single letter variables.
+Solution: Do not recognize a colon for a namespace for single letter
+ variables. (closes #6547)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1321
+Problem: GitHub CI also runs on tag push.
+Solution: Skip CI on push. (Ken Takata, closes #6571)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1322
+Problem: Vim9: method on double quoted string doesn't work.
+Solution: Recognize double quoted string. (closes #6562)
+Files: src/ex_docmd.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1323
+Problem: Vim9: invalid operators only rejected in :def function.
+Solution: Also reject them at script level. (closes #6564)
+Files: src/eval.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1324
+Problem: Vim9: line break after "=" does not work.
+Solution: Also allow for NUL after "=". (closes #6549)
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1325
+Problem: Vim9: using Vim9 script for autoload not tested.
+Solution: Add a test. Update help.
+Files: runtime/doc/vim9.txt, src/testdir/test_autoload.vim,
+ src/testdir/sautest/autoload/auto9.vim
+
+Patch 8.2.1326
+Problem: Vim9: skipping over white space after list.
+Solution: Do not skip white space, a following [] would be misinterpreted.
+ (closes #6552) Fix a few side effects.
+Files: src/list.c, src/dict.c, src/eval.c, src/userfunc.c,
+ src/testdir/test_functions.vim, src/testdir/test_gn.vim,
+ src/testdir/test_popupwin.vim, src/testdir/test_tabpage.vim,
+ src/testdir/test_textprop.vim, src/testdir/test_textobjects.vim
+
+Patch 8.2.1327
+Problem: Mac: configure can't find Tcl libraries.
+Solution: Adjust configure check. (closes #6575)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.1328
+Problem: No space allowed before comma in list.
+Solution: Legacy Vim script allows it. (closes #6577)
+Files: src/dict.c, src/list.c, src/testdir/test_listdict.vim
+
+Patch 8.2.1329
+Problem: Vim9: cannot define global function inside :def function.
+Solution: Assign to global variable instead of local. (closes #6584)
+Files: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/vim9.h, src/vim9execute.c, src/structs.h,
+ src/misc2.c, src/proto/misc2.pro, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1330
+Problem: Github workflow takes longer than needed.
+Solution: Do two test runs in parallel instead of sequentially. (Ken Takata,
+ closes #6579)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1331
+Problem: Vim9: :echo with two lists doesn't work.
+Solution: Do not skip white space before []. (closes #6552)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1332
+Problem: Vim9: memory leak when using nested global function.
+Solution: Delete the function when deleting the instruction. Disable test
+ that still causes a leak.
+Files: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1333
+Problem: Vim9: memory leak when using nested global function.
+Solution: Swap from and to when copying the lines.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1334
+Problem: Github workflow timeout needs tuning
+Solution: Use a 10 minute timeout. Fail when timing out. (Ken Takata,
+ closes #6590)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1335
+Problem: CTRL-C in the GUI doesn't interrupt. (Sergey Vlasov)
+Solution: Recognize "C" with CTRL modifier as CTRL-C. (issue #6565)
+Files: src/gui.c, src/proto/gui.pro, src/gui_gtk_x11.c, src/gui_x11.c,
+ src/gui_photon.c
+
+Patch 8.2.1336 (after 8.2.1335)
+Problem: Build failure on non-Unix systems.
+Solution: Add #ifdef.
+Files: src/gui.c
+
+Patch 8.2.1337
+Problem: Vim9: cannot use empty key in dict assignment.
+Solution: Allow empty key. (closes #6591)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1338
+Problem: Vim9: assigning to script-local variable doesn't check type.
+Solution: Use the type. (issue #6591)
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1339
+Problem: Vim9: assigning to global dict variable doesn't work.
+Solution: Guess variable type based in index type. (issue #6591)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1340
+Problem: Some tests fail on Cirrus CI and/or with FreeBSD.
+Solution: Make 'backupskip' empty. Do not run tests as root. Check for
+ directory when using viminfo. (Ozaki Kiichi, closes #6596)
+Files: .cirrus.yml, src/testdir/test_backup.vim,
+ src/testdir/test_edit.vim, src/testdir/test_viminfo.vim,
+ src/testdir/test_writefile.vim, src/viminfo.c
+
+Patch 8.2.1341
+Problem: Build failures.
+Solution: Add missing error message.
+Files: src/globals.h
+
+Patch 8.2.1342
+Problem: Vim9: accidentally using "x" gives a confusing error.
+Solution: Disallow using ":t" in Vim9 script. (issue #6399)
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9script.c,
+ src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1343
+Problem: Vim9: cannot find global function when using g: when local
+ function with the same name exists.
+Solution: Find global function when using g:.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1344
+Problem: Vim9: No test for trying to redefine global function.
+Solution: Add a test.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1345
+Problem: Redraw error when using visual block and scroll.
+Solution: Add check for w_topline. (closes #6597)
+Files: src/drawscreen.c, src/testdir/test_display.vim,
+ src/testdir/dumps/Test_display_visual_block_scroll.dump
+
+Patch 8.2.1346
+Problem: Small build fails.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.1347
+Problem: Cannot easily get the script ID.
+Solution: Support expand('<SID>').
+Files: runtime/doc/map.txt, src/ex_docmd.c,
+ src/testdir/test_expand_func.vim
+
+Patch 8.2.1348
+Problem: Build failure without the eval feature.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.1349
+Problem: Vim9: can define a function with the name of an import.
+Solution: Disallow using an existing name. (closes #6585)
+Files: src/userfunc.c, src/vim9compile.c, src/globals.h,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1350
+Problem: Vim9: no test for error message when redefining function.
+Solution: Add a test.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1351
+Problem: Vim9: no proper error if using namespace for nested function.
+Solution: Specifically check for a namespace. (closes #6582)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1352
+Problem: Vim9: no error for shadowing a script-local function by a nested
+ function.
+Solution: Check for script-local function. (closes #6586)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1353
+Problem: Crash when drawing double-wide character in terminal window.
+ (Masato Nishihata)
+Solution: Check getcell() returning NULL. (issue #6141)
+Files: src/libvterm/src/screen.c, src/testdir/test_terminal.vim
+
+Patch 8.2.1354
+Problem: Test 59 is old style.
+Solution: Convert into a new style test. (Yegappan Lakshmanan, closes #6604)
+Files: runtime/doc/eval.txt, src/Makefile, src/testdir/Make_all.mak,
+ src/testdir/Make_vms.mms, src/testdir/test59.in,
+ src/testdir/test59.ok, src/testdir/test_spell_utf8.vim
+
+Patch 8.2.1355
+Problem: Vim9: no error using :let for options and registers.
+Solution: Give an error. (closes #6568)
+Files: src/evalvars.c, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1356
+Problem: Vim9: cannot get the percent register.
+Solution: Check for readable registers instead of writable. (closes #6566)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1357
+Problem: Vim9: cannot assign to / register.
+Solution: Adjust check for assignment. (issue #6566)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1358
+Problem: Vim9: test fails with +dnd is not available.
+Solution: Add condition.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1359
+Problem: Vim9: cannot assign to / register in Vim9 script.
+Solution: Adjust check for assignment in Vim9 script. (closes #6567)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1360
+Problem: Stray error for white space after expression.
+Solution: Ignore trailing white space. (closes #6608)
+Files: src/eval.c, src/testdir/test_filter_map.vim
+
+Patch 8.2.1361
+Problem: Error for white space after expression in assignment.
+Solution: Skip over white space. (closes #6617)
+Files: src/eval.c, src/testdir/test_expr.vim
+
+Patch 8.2.1362
+Problem: Last entry of ":set term=xxx" overwritten by error message when
+ 'cmdheight' is two or more. (Tony Mechelynck)
+Solution: Output extra line breaks.
+Files: src/term.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.1363
+Problem: Test trying to run terminal when it is not supported.
+Solution: Check if Vim can be run in a terminal.
+Files: src/testdir/test_termcodes.vim
+
+Patch 8.2.1364
+Problem: Invalid memory access when searching for raw string.
+Solution: Check for delimiter match before following quote. (closes #6578)
+Files: src/search.c
+
+Patch 8.2.1365
+Problem: Vim9: no error for missing white space around operator.
+Solution: Check for white space. (closes #6618)
+Files: src/eval.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/evalvars.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1366
+Problem: Test 49 is old style.
+Solution: Convert several tests to new style. (Yegappan Lakshmanan,
+ closes #6629)
+Files: src/testdir/script_util.vim, src/testdir/test49.ok,
+ src/testdir/test49.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.1367
+Problem: Vim9: no error for missing white space around operator.
+Solution: Check for white space around *, / and %.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1368
+Problem: Vim9: no error for missing white space around operator.
+Solution: Check for white space around <, !=, etc.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1369
+Problem: MS-Windows: autocommand test sometimes fails.
+Solution: Do not rely on the cat command.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.1370
+Problem: MS-Windows: warning for using fstat() with stat_T.
+Solution: use _fstat64() if available. (Naruhiko Nishino, closes #6625)
+Files: src/macros.h
+
+Patch 8.2.1371
+Problem: Vim9: no error for missing white space around operator.
+Solution: Check for white space around && and ||.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1372
+Problem: Vim9: no error for missing white space around operator.
+Solution: Check for white space around ? and :.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1373
+Problem: Vim9: no error for assigning to non-existing script var.
+Solution: Check that in Vim9 script the variable was defined. (closes #6630)
+Files: src/vim9compile.c, src/userfunc.c, src/structs.h,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1374
+Problem: Vim9: error for assigning empty list to script variable.
+Solution: Use t_unknown for empty list member. (closes #6595)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1375
+Problem: Vim9: method name with digit not accepted.
+Solution: Use eval_isnamec() instead of eval_isnamec1(). (closes #6613)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1376
+Problem: Vim9: expression mapping causes error for using :import.
+Solution: Add EX_LOCK_OK to :import and :export. (closes #6606)
+Files: src/ex_cmds.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1377
+Problem: Triggering the ATTENTION prompt causes typeahead to be messed up.
+Solution: Increment tb_change_cnt. (closes #6541)
+Files: src/getchar.c
+
+Patch 8.2.1378
+Problem: Cannot put space between function name and paren.
+Solution: Allow this for backwards compatibility.
+Files: src/eval.c, src/testdir/test_expr.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1379
+Problem: Curly braces expression ending in " }" does not work.
+Solution: Skip over white space when checking for "}". (closes #6634)
+Files: src/dict.c, src/testdir/test_eval_stuff.vim
+
+Patch 8.2.1380
+Problem: Vim9: return type of getreg() is always a string.
+Solution: Use list of strings when there are three arguments. (closes #6633)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1381
+Problem: MS-Windows: crash with Python 3.5 when stdin is redirected.
+Solution: Reconnect stdin. (Yasuhiro Matsumoto, Ken Takata, closes #6641)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/if_python3.c
+
+Patch 8.2.1382
+Problem: Vim9: using :import in filetype plugin gives an error.
+Solution: Allow commands with the EX_LOCK_OK flag. (closes #6636)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1383
+Problem: Test 49 is old style.
+Solution: Convert test cases to new style. (Yegappan Lakshmanan,
+ closes #6638)
+Files: src/testdir/test49.ok, src/testdir/test49.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.1384
+Problem: No ATTENTION prompt for :vimgrep first match file.
+Solution: When there is an existing swap file do not keep the dummy buffer.
+ (closes #6649)
+Files: src/quickfix.c, src/testdir/runtest.vim,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.1385
+Problem: No testing on ARM.
+Solution: Add a test on Travis for ARM. (Ozaki Kiichi, closes #6615)
+Files: .travis.yml
+
+Patch 8.2.1386
+Problem: Backslash not removed after space in option with space in
+ 'isfname'.
+Solution: Do remove backslash before space, also when it is in 'isfname'.
+ (Yasuhiro Matsumoto, closes #6651)
+Files: src/option.c, src/testdir/test_options.vim
+
+Patch 8.2.1387
+Problem: Vim9: cannot assign to single letter variable with type.
+Solution: Exclude the colon from the variable name. (closes #6647)
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1388
+Problem: Vim9: += only works for numbers.
+Solution: Use += as concatenate for a list. (closes #6646)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1389
+Problem: File missing from the distribution.
+Solution: Add script_util.vim to the list of distributes files.
+Files: Filelist
+
+Patch 8.2.1390
+Problem: Vim9: type error after storing an option value.
+Solution: Drop the type after a STOREOPT instruction. (closes #6632)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1391
+Problem: Vim9: no error for shadowing a script function.
+Solution: Check for already defined items. (closes #6652)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1392
+Problem: Vim9: error line number incorrect after skipping over comment
+ lines.
+Solution: Insert empty lines for skipped lines.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1393
+Problem: Insufficient testing for script debugging.
+Solution: Add more tests. (Ben Jackson)
+Files: src/testdir/test_debugger.vim
+
+Patch 8.2.1394
+Problem: Vim9: compiling a function interferes with command modifiers.
+Solution: Save and restore command modifiers. (closes #6658)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1395
+Problem: Vim9: no error if declaring a funcref with a lower case letter.
+Solution: Check the name after the type is inferred. Fix confusing name.
+Files: src/vim9compile.c, src/dict.c, src/eval.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1396
+Problem: Vim9: no error for unexpectedly returning a value.
+Solution: Only set the return type for lambda's. Make using function type
+ in a function reference work.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1397
+Problem: Vim9: return type of maparg() not adjusted for fourth argument.
+Solution: Check if fourth argument is present. (closes #6645)
+Files: src/evalfunc.c, src/testdir/test_maparg.vim
+
+Patch 8.2.1398
+Problem: Autoload script sourced twice if sourced directly.
+Solution: Do not source an autoload script again. (issue #6644)
+Files: src/scriptfile.c, src/testdir/sautest/autoload/sourced.vim
+
+Patch 8.2.1399
+Problem: Vim9: may find imported item in wrong script.
+Solution: When looking up script-local function use the embedded script ID.
+ (issue #6644)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1400
+Problem: Vim9: test does not delete written files.
+Solution: Correct file names.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1401
+Problem: Cannot jump to the last used tabpage.
+Solution: Add g<Tab> and tabpagnr('#'). (Yegappan Lakshmanan, closes #6661,
+ neovim #11626)
+Files: runtime/doc/eval.txt, runtime/doc/index.txt,
+ runtime/doc/tabpage.txt, src/evalwindow.c, src/globals.h,
+ src/normal.c, src/proto/window.pro, src/testdir/test_tabpage.vim,
+ src/window.c
+
+Patch 8.2.1402
+Problem: s390x tests always fail.
+Solution: Temporarily disable s390x tests.
+Files: .travis.yml
+
+Patch 8.2.1403
+Problem: Vim9: Vim highlighting fails in cmdline window if it uses Vim9
+ commands.
+Solution: Allow using :vim9script, :import and :export while in the cmdline
+ window. (closes #6656)
+Files: src/ex_cmds.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1404
+Problem: Vim9: script test fails in the GUI.
+Solution: Use another key to map. Improve cleanup.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1405
+Problem: Vim9: vim9compile.c is getting too big.
+Solution: Split off type code to vim9type.c.
+Files: Filelist, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/vim9type.c, src/proto/vim9type.pro, src/proto.h,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile
+
+Patch 8.2.1406
+Problem: Popupwindow lacks scrollbar if no "maxheight" is used.
+Solution: Compute the max height depending on the position. (closes #6664)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_toohigh_1.dump,
+ src/testdir/dumps/Test_popupwin_toohigh_2.dump
+
+Patch 8.2.1407
+Problem: Vim9: type of list and dict only depends on first item.
+Solution: Use all items to decide about the type.
+Files: src/vim9compile.c, src/vim9type.c, src/proto/vim9type.pro,
+ src/testdir/test_vim9_expr.vim, runtime/doc/vim9.txt
+
+Patch 8.2.1408
+Problem: Vim9: type casting not supported.
+Solution: Introduce type casting.
+Files: runtime/doc/vim9.txt, src/vim9compile.c,
+ src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1409
+Problem: Npmrc and php.ini filetypes not recognized.
+Solution: Add filetype detection. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1410
+Problem: Adding compiler plugin requires test change.
+Solution: Include compiler plugin and adjust test.
+Files: src/testdir/test_compiler.vim, runtime/compiler/xo.vim
+
+Patch 8.2.1411
+Problem: when splitting a window localdir is copied but prevdir is not.
+Solution: Also copy prevdir. (closes #6667)
+Files: src/window.c, src/testdir/test_cd.vim
+
+Patch 8.2.1412
+Problem: Vim: not operator does not result in boolean.
+Solution: Make type depend on operator. (issue 6678) Fix using "false" and
+ "true" in Vim9 script.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1413 (after 8.2.1401)
+Problem: Previous tab page not usable from an Ex command.
+Solution: Add the "#" argument for :tabnext et al. (Yegappan Lakshmanan,
+ closes #6677)
+Files: runtime/doc/tabpage.txt, src/ex_docmd.c, src/window.c,
+ src/testdir/test_tabpage.vim
+
+Patch 8.2.1414
+Problem: Popupwindow missing last couple of lines when cursor is in the
+ first line.
+Solution: Compute the max height also when top aligned. (closes #6664)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_toohigh_3.dump,
+ src/testdir/dumps/Test_popupwin_nospace.dump
+
+Patch 8.2.1415
+Problem: Closing a popup window with CTRL-C interrupts 'statusline' if it
+ calls a function.
+Solution: Reset got_int while redrawing. (closes #6675)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_ctrl_c.dump
+
+Patch 8.2.1416
+Problem: Vim9: boolean evaluation does not work as intended.
+Solution: Use tv2bool() in Vim9 script. (closes #6681)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim, src/testdir/vim9.vim
+
+Patch 8.2.1417
+Problem: Test 49 is old style.
+Solution: Convert more parts to new style test. (Yegappan Lakshmanan,
+ closes #6682)
+Files: src/testdir/test49.ok, src/testdir/test49.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.1418
+Problem: Vim9: invalid error for missing white space after function.
+Solution: Do not skip over white space. (closes #6679)
+Files: src/userfunc.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1419
+Problem: Vim9: not operator applied too early.
+Solution: Implement the "numeric_only" argument. (closes #6680)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1420
+Problem: Test 49 is old style.
+Solution: Convert remaining parts to new style. Remove obsolete items.
+ (Yegappan Lakshmanan, closes #6683)
+Files: Filelist, runtime/doc/testing.txt, src/Make_mvc.mak, src/Makefile,
+ src/testdir/Make_all.mak, src/testdir/Make_amiga.mak,
+ src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
+ src/testdir/Make_vms.mms, src/testdir/Makefile,
+ src/testdir/README.txt, src/testdir/test49.in,
+ src/testdir/test49.ok, src/testdir/test49.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.1421
+Problem: Vim9: handling "+" and "-" before number differs from Vim script.
+Solution: Use the same sequence of commands.
+Files: src/vim9compile.c
+
+Patch 8.2.1422
+Problem: The Mac GUI implementation is outdated and probably doesn't even
+ work.
+Solution: Remove the Mac GUI code. The MacVim project provides the
+ supported Vim GUI version.
+Files: Filelist, src/gui_mac.c, src/proto/gui_mac.pro, src/proto.h,
+ src/Makefile, src/configure.ac, src/auto/configure,
+ src/evalfunc.c, src/fileio.c, src/gui.c, src/if_mzsch.c,
+ src/main.c, src/misc2.c, src/mouse.c, src/os_mac_conv.c,
+ src/os_unix.c, src/feature.h, src/globals.h, src/gui.h,
+ src/option.h, src/optiondefs.h, src/os_mac.h, src/structs.h,
+ src/vim.h, src/INSTALLmac.txt
+
+Patch 8.2.1423
+Problem: Vim9: find global function when looking for script-local.
+Solution: Don't strip prefix if name starts with "s:". (closes #6688)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1424 (after 8.2.1422)
+Problem: Mac build fails.
+Solution: Adjust configure to not fall back to Athena. Adjust some other
+ files.
+Files: src/configure.ac, src/auto/configure, src/os_macosx.m,
+ src/version.c
+
+Patch 8.2.1425
+Problem: Vim9: cannot use call() without :call.
+Solution: Do not skip over "call(". (closes #6689)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1426
+Problem: Vim9: cannot call autoload function in :def function.
+Solution: Load the autoload script. (closes #6690)
+Files: src/vim9execute.c, src/vim9compile.c, src/scriptfile.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1427
+Problem: Vim9: cannot use a range with marks in :def function.
+Solution: Parse range after colon. (closes #6686)
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1428
+Problem: Vim9: :def function does not abort on nested function error.
+Solution: Check whether an error message was given. (closes #6691)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1429
+Problem: Vim9: no error for missing white after : in dict.
+Solution: Check for white space. (closes #6671) Also check that there is no
+ white before the :.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1430
+Problem: Vim9: error for missing comma instead of extra white space.
+Solution: Check if comma can be found after white space. (closes #6668)
+ Also check for extra white space in literal dict. (closes #6670)
+Files: src/list.c, src/dict.c, src/vim9compile.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1431
+Problem: Vim9: no error for white space before comma in dict.
+Solution: Check for extra white space. (closes #6674)
+Files: src/vim9compile.c, src/dict.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1432
+Problem: Various inconsistencies in test files.
+Solution: Add modelines where they were missing. Use Check commands instead
+ of silently skipping over tests. Adjust indents and comments.
+ (Ken Takata, closes #6695)
+Files: src/testdir/test_arglist.vim, src/testdir/test_assert.vim,
+ src/testdir/test_autochdir.vim, src/testdir/test_autocmd.vim,
+ src/testdir/test_autoload.vim, src/testdir/test_balloon.vim,
+ src/testdir/test_balloon_gui.vim, src/testdir/test_behave.vim,
+ src/testdir/test_blockedit.vim, src/testdir/test_breakindent.vim,
+ src/testdir/test_bufline.vim, src/testdir/test_bufwintabinfo.vim,
+ src/testdir/test_cd.vim, src/testdir/test_changedtick.vim,
+ src/testdir/test_changelist.vim, src/testdir/test_channel.vim,
+ src/testdir/test_checkpath.vim, src/testdir/test_cindent.vim,
+ src/testdir/test_cjk_linebreak.vim,
+ src/testdir/test_clientserver.vim,
+ src/testdir/test_close_count.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_command_count.vim,
+ src/testdir/test_comparators.vim, src/testdir/test_compiler.vim,
+ src/testdir/test_crypt.vim, src/testdir/test_cursorline.vim,
+ src/testdir/test_curswant.vim, src/testdir/test_debugger.vim,
+ src/testdir/test_delete.vim, src/testdir/test_diffmode.vim,
+ src/testdir/test_digraph.vim, src/testdir/test_display.vim,
+ src/testdir/test_edit.vim, src/testdir/test_environ.vim,
+ src/testdir/test_erasebackword.vim,
+ src/testdir/test_escaped_glob.vim, src/testdir/test_ex_equal.vim,
+ src/testdir/test_ex_undo.vim, src/testdir/test_ex_z.vim,
+ src/testdir/test_exec_while_if.vim, src/testdir/test_exists.vim,
+ src/testdir/test_exists_autocmd.vim, src/testdir/test_exit.vim,
+ src/testdir/test_expand_dllpath.vim,
+ src/testdir/test_expr_utf8.vim, src/testdir/test_feedkeys.vim,
+ src/testdir/test_file_size.vim, src/testdir/test_fileformat.vim,
+ src/testdir/test_filter_cmd.vim,
+ src/testdir/test_find_complete.vim, src/testdir/test_findfile.vim,
+ src/testdir/test_fixeol.vim, src/testdir/test_flatten.vim,
+ src/testdir/test_fnameescape.vim, src/testdir/test_fold.vim,
+ src/testdir/test_functions.vim, src/testdir/test_ga.vim,
+ src/testdir/test_getcwd.vim, src/testdir/test_getvar.vim,
+ src/testdir/test_glob2regpat.vim, src/testdir/test_global.vim,
+ src/testdir/test_gui.vim, src/testdir/test_gui_init.vim,
+ src/testdir/test_highlight.vim, src/testdir/test_hlsearch.vim,
+ src/testdir/test_iminsert.vim,
+ src/testdir/test_increment_dbcs.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_interrupt.vim,
+ src/testdir/test_job_fails.vim, src/testdir/test_join.vim,
+ src/testdir/test_json.vim, src/testdir/test_jumplist.vim,
+ src/testdir/test_jumps.vim, src/testdir/test_lambda.vim,
+ src/testdir/test_langmap.vim, src/testdir/test_largefile.vim,
+ src/testdir/test_lineending.vim, src/testdir/test_listchars.vim,
+ src/testdir/test_listener.vim, src/testdir/test_listlbr.vim,
+ src/testdir/test_listlbr_utf8.vim,
+ src/testdir/test_makeencoding.vim, src/testdir/test_man.vim,
+ src/testdir/test_mapping.vim, src/testdir/test_marks.vim,
+ src/testdir/test_matchadd_conceal.vim,
+ src/testdir/test_matchadd_conceal_utf8.vim,
+ src/testdir/test_memory_usage.vim, src/testdir/test_menu.vim,
+ src/testdir/test_messages.vim, src/testdir/test_mksession.vim,
+ src/testdir/test_modeline.vim,
+ src/testdir/test_nested_function.vim, src/testdir/test_number.vim,
+ src/testdir/test_options.vim, src/testdir/test_packadd.vim,
+ src/testdir/test_partial.vim, src/testdir/test_paste.vim,
+ src/testdir/test_plus_arg_edit.vim, src/testdir/test_preview.vim,
+ src/testdir/test_profile.vim, src/testdir/test_prompt_buffer.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_quotestar.vim,
+ src/testdir/test_random.vim, src/testdir/test_recover.vim,
+ src/testdir/test_regex_char_classes.vim,
+ src/testdir/test_regexp_latin.vim, src/testdir/test_registers.vim,
+ src/testdir/test_rename.vim, src/testdir/test_retab.vim,
+ src/testdir/test_scriptnames.vim, src/testdir/test_scroll_opt.vim,
+ src/testdir/test_scrollbind.vim, src/testdir/test_search_stat.vim,
+ src/testdir/test_searchpos.vim, src/testdir/test_set.vim,
+ src/testdir/test_sha256.vim, src/testdir/test_shift.vim,
+ src/testdir/test_shortpathname.vim, src/testdir/test_signs.vim,
+ src/testdir/test_sort.vim, src/testdir/test_sound.vim,
+ src/testdir/test_source_utf8.vim, src/testdir/test_spellfile.vim,
+ src/testdir/test_startup.vim, src/testdir/test_startup_utf8.vim,
+ src/testdir/test_stat.vim, src/testdir/test_suspend.vim,
+ src/testdir/test_swap.vim, src/testdir/test_syntax.vim,
+ src/testdir/test_tab.vim, src/testdir/test_tabline.vim,
+ src/testdir/test_tagcase.vim, src/testdir/test_tagjump.vim,
+ src/testdir/test_taglist.vim, src/testdir/test_termcodes.vim,
+ src/testdir/test_termencoding.vim, src/testdir/test_terminal.vim,
+ src/testdir/test_terminal2.vim, src/testdir/test_terminal3.vim,
+ src/testdir/test_terminal_fail.vim,
+ src/testdir/test_true_false.vim,
+ src/testdir/test_utf8_comparisons.vim,
+ src/testdir/test_vartabs.vim, src/testdir/test_version.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_winbar.vim,
+ src/testdir/test_winbuf_close.vim,
+ src/testdir/test_window_cmd.vim, src/testdir/test_window_id.vim,
+ src/testdir/test_windows_home.vim, src/testdir/test_wnext.vim,
+ src/testdir/test_wordcount.vim, src/testdir/test_writefile.vim,
+ src/testdir/test_xxd.vim
+
+Patch 8.2.1433
+Problem: Vim9: cannot mingle comments in multi-line lambda.
+Solution: Skip over NULL lines. (closes #6694)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1434
+Problem: Vim9: crash when lambda uses outer function argument.
+Solution: Set the flag that the outer context is used.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1435
+Problem: Vim9: always converting to string for ".." leads to mistakes.
+Solution: Only automatically convert simple types.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9.h,
+ src/vim9execute.c, src/proto/vim9execute.pro, src/eval.c,
+ src/evalfunc.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1436
+Problem: Function implementing :substitute has unexpected name.
+Solution: Rename from do_sub() to ex_substitute().
+Files: src/ex_cmds.c, src/proto/ex_cmds.pro, src/ex_docmd.c,
+ src/ex_cmds.h
+
+Patch 8.2.1437
+Problem: Vim9: 'statusline' is evaluated using Vim9 script syntax.
+Solution: Always use legacy script syntax.
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1438
+Problem: Missing tests for interrupting script execution from debugger.
+Solution: Add tests. (Yegappan Lakshmanan, closes #6697)
+Files: src/testdir/test_debugger.vim
+
+Patch 8.2.1439
+Problem: Tiny and small builds have no test coverage.
+Solution: Restore tests that do not depend on the +eval feature.
+ (Ken Takata, closes #6696)
+Files: .travis.yml, Filelist, Makefile, runtime/doc/testing.txt,
+ src/Make_mvc.mak, src/Makefile, src/testdir/Make_all.mak,
+ src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
+ src/testdir/Make_ming.mak, src/testdir/Make_vms.mms,
+ src/testdir/Makefile, src/testdir/runtest.vim,
+ src/testdir/test1.in, src/testdir/test1.ok, src/testdir/test20.in,
+ src/testdir/test20.ok, src/testdir/test21.in,
+ src/testdir/test21.ok, src/testdir/test22.in,
+ src/testdir/test22.ok, src/testdir/test23.in,
+ src/testdir/test23.ok, src/testdir/test24.in,
+ src/testdir/test24.ok, src/testdir/test25.in,
+ src/testdir/test25.ok, src/testdir/test26.in,
+ src/testdir/test26.ok, src/testdir/test27.in,
+ src/testdir/test27.ok, src/testdir/test_options.vim
+
+Patch 8.2.1440
+Problem: Debugger code insufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #6700)
+Files: src/testdir/test_debugger.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.1441
+Problem: Running tests in tiny version gives error for summarize.vim.
+Solution: Set 'cpoptions' to allow for line continuation. Restore
+ redirecting test output to /dev/null.
+Files: src/testdir/summarize.vim, src/testdir/Makefile
+
+Patch 8.2.1442
+Problem: Outdated references to the Mac Carbon GUI.
+Solution: Remove or update references. (Yee Cheng Chin, closes #6703)
+Files: READMEdir/README_extra.txt, src/Makefile, src/configure.ac,
+ src/auto/configure, src/gui_haiku.cc, src/os_macosx.m,
+ src/testdir/test_iminsert.vim, src/vim.h
+
+Patch 8.2.1443
+Problem: Vim9: crash when interrupting a nested :def function.
+Solution: Push a dummy return value onto the stack. (closes #6701)
+Files: src/vim9execute.c
+
+Patch 8.2.1444
+Problem: Error messages are spread out and names can be confusing.
+Solution: Start moving error messages to a separate file and use clear
+ names.
+Files: Filelist, src/vim.h, src/globals.h, src/errors.h, src/Makefile,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
+ src/dict.c, src/evalvars.c, src/ex_docmd.c, src/list.c,
+ src/userfunc.c, src/vim9compile.c, src/vim9execute.c,
+ src/vim9script.c, src/vim9type.c
+
+Patch 8.2.1445
+Problem: Vim9: function expanded name is cleared when sourcing a script
+ again.
+Solution: Only clear the expanded name when deleting the function.
+ (closes #6707)
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1446
+Problem: Vim9: line number in error message is not correct.
+Solution: Set SOURCING_LNUM before calling emsg(). (closes #6708)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1447
+Problem: Vim9: return type of keys() is list<any>.
+Solution: Should be list<string>. (closes #6711)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1448
+Problem: Test 77a for VMS depends on small.vim which does not exist.
+Solution: Use the 'silent while 0" trick. (issue #6696)
+Files: src/testdir/test77a.in
+
+Patch 8.2.1449
+Problem: Some test makefiles delete files that are not generated.
+Solution: Remove the deletion commands.
+Files: src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
+ src/testdir/Make_amiga.mak, src/testdir/Make_vms.mms
+
+Patch 8.2.1450
+Problem: Vim9: no check that script-local items don't become global.
+Solution: Add a test.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1451
+Problem: Vim9: list type at script level only uses first item.
+Solution: Use all members, like in a compiled function. (closes #6712)
+ Also for dictionary.
+Files: src/vim9type.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1452
+Problem: Vim9: dead code in to_name_end().
+Solution: Remove check for lambda and dict, it won't be used.
+Files: src/vim9compile.c
+
+Patch 8.2.1453
+Problem: Vim9: failure to compile lambda not tested.
+Solution: Add a test case.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1454
+Problem: Vim9: failure invoking lambda with wrong arguments.
+Solution: Handle invalid arguments. Add a test.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1455
+Problem: Vim9: crash when using typecast before constant.
+Solution: Generate constant before checking type. Add tets.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1456
+Problem: MS-Windows: test files are not deleted.
+Solution: use "del" instead of $(DEL).
+Files: src/testdir/Make_dos.mak
+
+Patch 8.2.1457
+Problem: Vim9: the output of :disassemble cannot be interrupted.
+Solution: Check got_int. (closes #6715)
+Files: src/vim9execute.c
+
+Patch 8.2.1458
+Problem: .gawk files not recognized.
+Solution: Recognize .gawk files. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1459
+Problem: Vim9: declaring a script variable at the script level does not
+ infer the type.
+Solution: Get the type from the value. (closes #6716)
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1460
+Problem: Error messages are spread out.
+Solution: Move more messages into errors.h.
+Files: src/errors.h, src/globals.h, src/vim9compile.c, src/vim9execute.c,
+ src/vim9script.c, src/vim9type.c, src/scriptfile.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/match.c, src/eval.c, src/evalvars.c,
+ src/userfunc.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1461
+Problem: Vim9: string indexes are counted in bytes.
+Solution: Use character indexes. (closes #6574)
+Files: runtime/doc/eval.txt, src/eval.c, src/proto/eval.pro,
+ src/vim9execute.c, src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1462
+Problem: Vim9: string slice not supported yet.
+Solution: Add support for string slicing.
+Files: src/errors.h, src/vim9compile.c, src/vim9.h, src/vim9execute.c,
+ src/eval.c, src/proto/eval.pro, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1463
+Problem: Vim9: list slice not supported yet.
+Solution: Add support for list slicing.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/eval.c,
+ src/list.c, src/proto/list.pro, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1464
+Problem: Vim9: build warning for unused variable.
+Solution: Delete the variable declaration.
+Files: src/vim9execute.c
+
+Patch 8.2.1465
+Problem: Vim9: subscript not handled properly.
+Solution: Adjust error message. Remove dead code. Disallow string to
+ number conversion in scripts.
+Files: src/errors.h, src/vim9compile.c, src/vim9execute.c, src/eval.c,
+ src/typval.c, src/list.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1466
+Problem: Vim9: cannot index or slice a variable with type "any".
+Solution: Add runtime index and slice.
+Files: src/eval.c, src/proto/eval.pro, src/vim9compile.c,
+ src/vim9execute.c, src/vim9.h, src/errors.h, src/list.c,
+ src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1467
+Problem: Vim9: :echomsg doesn't like a dict argument.
+Solution: Convert arguments like in legacy script. (closes #6717)
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1468
+Problem: Vim9: invalid error for missing white space.
+Solution: Don't skip over white space after index. (closes #6718)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1469
+Problem: Vim9: cannot assign string to string option.
+Solution: Change checks for option value. (closes #6720)
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1470
+Problem: Errors in spell file not tested.
+Solution: Add test for spell file errors. (Yegappan Lakshmanan,
+ closes #6721)
+Files: src/testdir/test_spellfile.vim
+
+Patch 8.2.1471
+Problem: :const only locks the variable, not the value.
+Solution: Lock the value as ":lockvar 1 var" would do. (closes #6719)
+Files: src/evalvars.c, src/testdir/test_const.vim
+
+Patch 8.2.1472
+Problem: ":argdel" does not work like ":.argdel" as documented. (Alexey
+ Demin)
+Solution: Make ":argdel" work like ":.argdel". (closes #6727)
+ Also fix giving the error "0 more files to edit".
+Files: src/arglist.c, src/ex_docmd.c, src/testdir/test_arglist.vim
+
+Patch 8.2.1473
+Problem: Items in a list given to :const can still be modified.
+Solution: Work like ":lockvar! name" but don't lock referenced items.
+ Make locking a blob work.
+Files: runtime/doc/eval.txt, src/evalvars.c, src/eval.c,
+ src/testdir/test_const.vim
+
+Patch 8.2.1474
+Problem: /usr/lib/udef/rules.d not recognized as udevrules.
+Solution: Adjust match pattern. (Haochen Tong, closes 36722)
+Files: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1475
+Problem: Vim9: can't use v:true for option flags.
+Solution: Add tv_get_bool_chk(). (closes #6725)
+Files: src/typval.c, src/proto/typval.pro, src/channel.c
+
+Patch 8.2.1476 (after 8.2.1474)
+Problem: Filetype test fails on MS-Windows.
+Solution: Remove "^" from pattern.
+Files: runtime/autoload/dist/ft.vim
+
+Patch 8.2.1477
+Problem: Vim9: error when using bufnr('%').
+Solution: Don't give an error for using a string argument. (closes #6723)
+Files: src/evalbuffer.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1478
+Problem: Vim9: cannot use "true" for some popup options.
+Solution: Add dict_get_bool(). (closes #6725)
+Files: src/dict.c, src/proto/dict.pro, src/popupwin.c
+
+Patch 8.2.1479
+Problem: Vim9: error for list index uses wrong line number.
+Solution: Set source line number. (closes #6724) Add a way to assert the
+ line number of the error with assert_fails().
+Files: runtime/doc/testing.txt, src/vim9execute.c, src/testing.c,
+ src/evalfunc.c, src/message.c, src/globals.h, src/testdir/vim9.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1480
+Problem: Vim9: skip expression in search() gives error.
+Solution: use tv_get_bool() eval_expr_to_bool(). (closes #6729)
+Files: src/eval.c, src/typval.c, src/proto/typval.pro,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1481
+Problem: Vim9: line number reported with error may be wrong.
+Solution: Check line number in tests.
+Files: src/testdir/test_vim9_expr.vim, src/testdir/vim9.vim,
+ src/vim9execute.c
+
+Patch 8.2.1482
+Problem: Vim9: crash when using a nested lambda.
+Solution: Do not clear the growarray when not evaluating. Correct pointer
+ when getting the next line. (closes #6731)
+Files: src/eval.c, src/scriptfile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1483
+Problem: Vim9: error for using special as number when returning "false"
+ from a popup filter.
+Solution: Use tv_get_bool(). (closes #6733)
+Files: src/popupwin.c
+
+Patch 8.2.1484
+Problem: Flaky failure in assert_fails().
+Solution: Only used fourth argument if there is a third argument.
+Files: src/testing.c
+
+Patch 8.2.1485
+Problem: Vim9: readdirex() expression doesn't accept bool.
+Solution: Accept both -1 and bool. (closes #6737)
+Files: src/filepath.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1486
+Problem: Vim9: readdir() expression doesn't accept bool.
+Solution: Merge with code for readdirex(). (closes #6737)
+Files: src/filepath.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1487
+Problem: Travis: installing snd-dummy is not always useful.
+Solution: Only install snd-dummy on amd64. (Ozaki Kiichi, closes #6738)
+Files: .travis.yml, ci/load-snd-dummy.sh
+
+Patch 8.2.1488
+Problem: Text does not scroll when inserting above first line.
+Solution: Adjust off-by-one error. (Ken Takata, closes #6739)
+Files: src/drawscreen.c, src/testdir/test_display.vim,
+ src/testdir/dumps/Test_display_scroll_at_topline.dump
+
+Patch 8.2.1489
+Problem: Vim9: error when setting an option with setbufvar().
+Solution: Do not get a number from a string value. (closes #6740)
+Files: src/evalvars.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1490
+Problem: Vim9: using /= with float and number doesn't work.
+Solution: Better support assignment with operator. (closes #6742)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1491
+Problem: Vim9: crash when compiling heredoc lines start with comment.
+Solution: Skip over NULL pointers. Do not remove comment and empty lines
+ when fetching function lines. (closes #6743)
+Files: src/vim9compile.c, src/scriptfile.c, src/proto/scriptfile.pro,
+ src/structs.h, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/ex_cmds.h, src/autocmd.c, src/proto/autocmd.pro,
+ src/ex_getln.c, src/proto/ex_getln.pro, src/userfunc.c,
+ src/proto/userfunc.pro, src/evalfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1492
+Problem: Build failures.
+Solution: Move typedef out of #ifdef. Adjust argument types. Discover
+ America.
+Files: src/structs.h, src/ex_docmd.c
+
+Patch 8.2.1493
+Problem: Not enough test coverage for the spell file handling.
+Solution: Add spell file tests. (Yegappan Lakshmanan, closes #6728)
+Files: src/spellfile.c, src/testdir/test_spellfile.vim
+
+Patch 8.2.1494
+Problem: Missing change to calling eval_getline().
+Solution: Change last argument.
+Files: src/eval.c
+
+Patch 8.2.1495
+Problem: "make clean" may delete too many files.
+Solution: Do not delete $APPDIR. (closes #6751)
+Files: src/Makefile
+
+Patch 8.2.1496
+Problem: Vim9: cannot use " #" in a mapping.
+Solution: Do not remove a comment with the EX_NOTRLCOM flag. (closes #6746)
+Files: src/ex_docmd.c, src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1497
+Problem: CursorHold test is flaky. (Jakub Kądziołka)
+Solution: Use WaitForAssert() (closes #6754)
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.1498
+Problem: On slow systems tests can be flaky.
+Solution: Use TermWait() instead of term-wait(). (Yegappan Lakshmanan,
+ closes #6756)
+Files: src/testdir/test_digraph.vim, src/testdir/test_display.vim,
+ src/testdir/test_popupwin.vim, src/testdir/test_termcodes.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_terminal3.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.1499
+Problem: Vim9: error when using "$" with col().
+Solution: Reorder getting the column value. (closes #6744)
+Files: src/eval.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1500
+Problem: Vim9: error when using address without a command.
+Solution: Execute the range itself. (closes #6747)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1501
+Problem: Vim9: concatenating to constant reverses order.
+Solution: Generate constant before option, register and environment
+ variable. (closes #6757)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1502
+Problem: Vim9: can use += with a :let command at script level.
+Solution: Give an error.
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1503
+Problem: Vim9: error for an autocmd defined in a :def function in legacy
+ Vim script.
+Solution: Don't check the variable type. (closes #6758)
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1504
+Problem: Vim9: white space checks are only done for a :def function.
+Solution: Also do checks at the script level. Adjust the name of a few
+ error messages.
+Files: src/userfunc.c, src/errors.h, src/dict.c, src/list.c,
+ src/vim9compile.c, src/vim9script.c, src/vim9type.c,
+ src/evalvars.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/vim9.vim
+
+Patch 8.2.1505
+Problem: Not all file read and writecode is tested.
+Solution: Add a few tests. (Dominique Pellé, closes #6764)
+Files: src/testdir/test_eval_stuff.vim, src/testdir/test_fnamemodify.vim,
+ src/testdir/test_functions.vim
+
+Patch 8.2.1506
+Problem: Vim9: no error when using a number other than 0 or 1 as bool.
+Solution: Check the number is 0 or 1.
+Files: src/errors.h, src/typval.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1507
+Problem: Using malloc() directly.
+Solution: Use ALLOC_ONE(). Remove superfluous typecast. (Hussam al-Homsi,
+ closes #6768)
+Files: src/eval.c, src/memline.c, src/vimrun.c
+
+Patch 8.2.1508
+Problem: Not all debugger commands covered by tests.
+Solution: Add tests for going up/down in the stack. (Ben Jackson,
+ closes #6765)
+Files: src/testdir/test_debugger.vim
+
+Patch 8.2.1509
+Problem: Vertical separator is cleared when dragging a popup window using a
+ multi-byte character for the border.
+Solution: Only clear the character before the window if it is using a
+ multi-byte character. (closes #6766)
+Files: src/screen.c
+
+Patch 8.2.1510
+Problem: Using "var" in a :def function may refer to a legacy Vim script
+ variable.
+Solution: Require using "s:" to refer to a legacy Vim script variable.
+ (closes #6771)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1511
+Problem: Putting a string in Visual block mode ignores multi-byte
+ characters.
+Solution: Adjust the column for Visual block mode. (closes #6767)
+Files: src/register.c, src/testdir/test_visual.vim
+
+Patch 8.2.1512
+Problem: Failure after ternary expression fails.
+Solution: Restore eval_flags. (Yasuhiro Matsumoto, closes #6776)
+Files: src/eval.c, src/testdir/test_vimscript.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1513
+Problem: Cannot interrupt shell used for filename expansion. (Dominique
+ Pellé)
+Solution: Do set tmode in mch_delay(). (closes #6770)
+Files: src/vim.h, src/os_unix.c, src/proto/os_unix.pro, src/term.c,
+ src/channel.c, src/if_cscope.c, src/os_amiga.c, src/ui.c,
+ src/proto/os_amiga.pro, src/os_win32.c, src/proto/os_win32.pro
+
+Patch 8.2.1514
+Problem: Multibyte vertical separator is cleared when dragging a popup
+ window using a multi-byte character for the border.
+Solution: Only clear the character before the window if it is double width.
+ (closes #6766)
+Files: src/screen.c
+
+Patch 8.2.1515
+Problem: Vim9: can create s:var in legacy script but cannot unlet.
+Solution: Allow :unlet for legacy script var.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1516
+Problem: Vim9: error for :exe has wrong line number.
+Solution: Set line number before calling do_cmdline_cmd(). (closes #6774)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1517
+Problem: Cannot easily get the character under the cursor.
+Solution: Add the {chars} argument to strpart().
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_functions.vim
+
+Patch 8.2.1518
+Problem: Vim9: cannot assign to local option.
+Solution: Skip over "&l:" and "&g:". (closes #6749)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/testdir/vim9.vim,
+ src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1519
+Problem: Vim9: Ex command default range is not set.
+Solution: When range is not given use default. (closes #6779)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1520
+Problem: Vim9: CTRL-] used in :def function does not work.
+Solution: Omit count or prepend colon. (closes #6769)
+Files: src/normal.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1521
+Problem: Reading past end of buffer when reading spellfile. (Yegappan
+ Lakshmanan)
+Solution: Store the byte length and check for it.
+Files: src/spellfile.c, src/spell.h
+
+Patch 8.2.1522
+Problem: Not enough test coverage for the spell file handling.
+Solution: Add spell file tests. (Yegappan Lakshmanan, closes #6763)
+Files: src/testdir/test_spellfile.vim
+
+Patch 8.2.1523
+Problem: Still not enough test coverage for the spell file handling.
+Solution: Add spell file tests. (Yegappan Lakshmanan, closes #6790)
+Files: src/testdir/test_spellfile.vim
+
+Patch 8.2.1524
+Problem: No longer get an error for string concatenation with float.
+ (Tsuyoshi Cho)
+Solution: Only convert float for Vim9 script. (closes #6787)
+Files: src/eval.c, src/testdir/test_eval_stuff.vim
+
+Patch 8.2.1525
+Problem: Messages from tests were not always displayed.
+Solution: Always show messages, the timing is always useful. (Ken Takata,
+ closes #6792)
+Files: src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
+ src/testdir/Makefile
+
+Patch 8.2.1526
+Problem: Line in testdir Makefile got commented out. (Christian Brabandt)
+Solution: Revert.
+Files: src/testdir/Makefile
+
+Patch 8.2.1527
+Problem: Vim9: cannot use a function name as a function reference at script
+ level.
+Solution: Check if a name is a function name. (closes #6789)
+Files: src/evalvars.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1528
+Problem: Vim9: :endif not found after "if false".
+Solution: When skipping still check for a following command. (closes #6797)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1529
+Problem: Vim9: :elseif may be compiled when not needed.
+Solution: Do evaluate the :elseif expression.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1530
+Problem: Vim9: test fails on MS-Windows.
+Solution: Skip Ex command inside "if false".
+Files: src/vim9compile.c
+
+Patch 8.2.1531
+Problem: Vim9: test still fails on MS-Windows.
+Solution: When skipping expect function to be NULL.
+Files: src/vim9compile.c
+
+Patch 8.2.1532
+Problem: Compiler warning for conversion of size_t to long.
+Solution: Add type cast.
+Files: src/eval.c
+
+Patch 8.2.1533
+Problem: Vim9: error when passing getreginfo() result to setreg().
+Solution: Use dict_get_bool() for "isunnamed". (closes #6784)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1534
+Problem: Vim9: type error for argument type is not at call position.
+Solution: Set the context and stack after checking the arguments.
+ (issue #6785)
+Files: src/userfunc.c, src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1535
+Problem: It is not possible to specify cell widths of characters.
+Solution: Add setcellwidths().
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/mbyte.c,
+ src/proto/mbyte.pro, src/errors.h, src/testdir/test_utf8.vim
+
+Patch 8.2.1536
+Problem: Cannot get the class of a character; emoji widths are wrong in
+ some environments.
+Solution: Add charclass(). Update some emoji widths. Add script to check
+ emoji widths.
+Files: Filelist, runtime/doc/eval.txt, runtime/doc/usr_41.txt,
+ src/evalfunc.c, src/mbyte.c, src/proto/mbyte.pro,
+ src/testdir/emoji_list.vim, src/testdir/test_functions.vim
+
+Patch 8.2.1537
+Problem: Memory access error when using setcellwidths().
+Solution: Use array and pointers correctly.
+Files: src/mbyte.c, src/errors.h, src/testdir/test_utf8.vim
+
+Patch 8.2.1538
+Problem: Python: iteration over vim objects fails to keep reference.
+Solution: Keep a reference for the object. (Paul Ollis, closes #6803,
+ closes #6806)
+Files: src/if_py_both.h, src/testdir/test_python3.vim
+
+Patch 8.2.1539
+Problem: Using invalid script ID causes a crash.
+Solution: Check the script ID to be valid. (closes #6804)
+Files: src/globals.h, src/evalvars.c, src/profiler.c, src/scriptfile.c,
+ src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1540
+Problem: The user cannot try out emoji character widths.
+Solution: Move the emoji script to the runtime/tools directory.
+Files: Filelist, src/testdir/emoji_list.vim, runtime/tools/emoji_list.vim
+
+Patch 8.2.1541
+Problem: Vim9: cannot find function reference for s:Func.
+Solution: Recognize <SNR> prefix. (closes #6805)
+Files: src/userfunc.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1542
+Problem: Vim9: test with invalid SID does not work in the GUI.
+Solution: Skip the test in the GUI.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1543
+Problem: Vim9: test with invalid SID is skipped in the GUI.
+Solution: Read the CTRL-C that feedkeys() put in typeahead.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1544
+Problem: Cannot translate messages in a Vim script.
+Solution: Add gettext(). Try it out for a few messages in the options
+ window.
+Files: Filelist, src/po/Makefile, src/po/README.txt, runtime/optwin.vim,
+ src/evalfunc.c, src/po/tojavascript.vim, src/po/fixfilenames.vim,
+ runtime/doc/eval.txt, runtime/doc/usr_41.txt
+
+Patch 8.2.1545
+Problem: ch_logfile() is unclear about closing when forking.
+Solution: Adjust the log messages.
+Files: src/channel.c, src/os_unix.c
+
+Patch 8.2.1546
+Problem: Build rule for Vim.app is unused.
+Solution: Delete the related build rules.
+Files: src/Makefile
+
+Patch 8.2.1547
+Problem: Various comment problems.
+Solution: Update comments.
+Files: src/arglist.c, src/map.c, src/mbyte.c, src/tag.c, src/undo.c,
+ src/testdir/README.txt, src/testdir/test_put.vim,
+ src/libvterm/README
+
+Patch 8.2.1548
+Problem: Cannot move position of "%%" in message translations. (Emir Sarı)
+Solution: Improve the check script.
+Files: src/po/check.vim
+
+Patch 8.2.1549
+Problem: The "r" command fails for keys with modifiers if 'esckeys' is off
+ and modifyOtherKeys is used. (Lauri Tirkkonen)
+Solution: Temporarily disable bracketed paste and modifyOtherKeys if
+ 'esckeys' is off. (closes #6809)
+Files: src/normal.c
+
+Patch 8.2.1550
+Problem: Vim9: bufname('%') gives an error.
+Solution: Only give an error for wrong argument type. (closes #6807)
+Files: src/evalbuffer.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1551
+Problem: Vim9: error for argument type does not mention the number.
+Solution: Pass the argument number to where the error is given.
+Files: src/vim9type.c, src/proto/vim9type.pro, src/vim9compile.c,
+ src/vim9execute.c, src/vim9script.c, src/eval.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1552
+Problem: Warnings from asan with clang-11. (James McCoy)
+Solution: Avoid using a NULL pointer. (issue #6811)
+Files: src/fold.c
+
+Patch 8.2.1553 (after 8.2.1552)
+Problem: Crash in edit test.
+Solution: Avoid using invalid pointer.
+Files: src/fold.c
+
+Patch 8.2.1554
+Problem: Crash in normal test.
+Solution: Skip adjusting marks if there are no folds.
+Files: src/fold.c
+
+Patch 8.2.1555
+Problem: Not all tests are executed on Github Actions.
+Solution: Copy "src" to "src2" earlier. Recognize "src2" in a couple more
+ places. Add two tests to the list of flaky tests. (Ken Takata,
+ closes #6798)
+Files: .github/workflows/ci-windows.yaml, src/testdir/runtest.vim,
+ src/testdir/test_python2.vim, src/testdir/test_python3.vim
+
+Patch 8.2.1556
+Problem: Cursorline highlighting always overrules sign highlighting.
+Solution: Combine the highlighting, use the priority to decide how.
+ (closes #6812)
+Files: runtime/doc/sign.txt, src/structs.h, src/drawline.c,
+ runtime/pack/dist/opt/termdebug/plugin/termdebug.vim,
+ src/testdir/test_signs.vim,
+ src/testdir/dumps/Test_sign_cursor_5.dump,
+ src/testdir/dumps/Test_sign_cursor_6.dump
+
+Patch 8.2.1557
+Problem: Crash in :vimgrep when started as "vim -n". (Raul Segura)
+Solution: Check mfp pointer. (Yegappan Lakshmanan, closes #6827)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.1558
+Problem: Signs test fails.
+Solution: Add missing change to sign.c.
+Files: src/sign.c
+
+Patch 8.2.1559
+Problem: s390x tests work again.
+Solution: re-enable s390x tests. (James McCoy, closes #6829)
+Files: .travis.yml
+
+Patch 8.2.1560
+Problem: Using NULL pointers in some code. (James McCoy)
+Solution: Avoid adding to a NULL pointer. Use byte as unsigned.
+Files: src/fold.c, src/eval.c, src/spellsuggest.c, src/spellfile.c,
+ src/vim9compile.c
+
+Patch 8.2.1561
+Problem: Using NULL pointers in fold code.
+Solution: Avoid using a NULL pointer. (Dominique Pellé, closes #6831,
+ closes #6831)
+Files: src/fold.c
+
+Patch 8.2.1562
+Problem: Vim9: error when using "%" where a buffer is expected.
+Solution: Add tv_get_buf_from_arg(). (closes #6814)
+Files: src/typval.c, src/proto/typval.pro, src/evalbuffer.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1563
+Problem: Vim9: error when using '%" with setbufvar() or getbufvar().
+Solution: Use tv_get_buf_from_arg(). (closes #6816)
+Files: src/evalvars.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1564
+Problem: A few remaining errors from ubsan.
+Solution: Avoid the warnings. (Dominique Pellé, closes #6837)
+Files: src/spellfile.c, src/spellsuggest.c, src/viminfo.c
+
+Patch 8.2.1565
+Problem: Spellfile test sometimes fails.
+Solution: Check running into the end of the file.
+Files: src/spellfile.c
+
+Patch 8.2.1566
+Problem: Not all Bazel files are recognized.
+Solution: Add *.bazel and *.BUILD. (closes #6836)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1567
+Problem: No example to use ubsan with clang.
+Solution: Add example commands. (Dominique Pellé, issue #6811)
+Files: src/Makefile
+
+Patch 8.2.1568
+Problem: prop_find() skips properties in the same line if "skipstart" is
+ used.
+Solution: Use "continue" instead of "break". (closes #6840)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.1569
+Problem: Vim9: fixes for functions not tested; failure in getchangelist().
+Solution: Add tests. (closes #6813, closes #6815, closes #6817)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1570
+Problem: Configure check for dirfd() does not work on HPUX. (Michael Osipov)
+Solution: Use AC_TRY_LINK instead of AC_TRY_COMPILE. (closes #6838)
+Files: src/configure.ac, src/auto/configure, src/fileio.c, src/globals.h
+
+Patch 8.2.1571
+Problem: Vim9: count() third argument cannot be "true".
+Solution: Use tv_get_bool_chk(). (closes #6818)
+Files: src/typval.c, src/list.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1572
+Problem: Vim9: expand() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6819)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1573
+Problem: Vim9: getreg() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6820)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1574
+Problem: Vim9: glob() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6821)
+Files: src/filepath.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1575
+Problem: Vim9: globpath() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6821)
+Files: src/filepath.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1576
+Problem: Vim9: index() does not take "true" as argument.
+Solution: Use tv_get_bool_chk(). (closes #6823)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1577
+Problem: Vim9: hasmapto(), mapcheck() and maparg() do not take "true" as
+ argument.
+Solution: Use tv_get_bool(). (closes #6822, closes #6824)
+Files: src/evalfunc.c, src/map.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1578
+Problem: Vim9: popup_clear() does not take "true" as argument.
+Solution: Use tv_get_bool(). (closes #6826)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1579
+Problem: Reports from asan are not optimal.
+Solution: Use clang with ubsan. (James McCoy, closes #6811)
+Files: .travis.yml
+
+Patch 8.2.1580
+Problem: Wildmenu does not work properly.
+Solution: Do not call may_do_incsearch_highlighting() if completion is in
+ progress.
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_1.dump,
+ src/testdir/dumps/Test_wildmenu_2.dump,
+ src/testdir/dumps/Test_wildmenu_3.dump,
+ src/testdir/dumps/Test_wildmenu_4.dump
+
+Patch 8.2.1581
+Problem: Using line() for global popup window doesn't work.
+Solution: Set tabpage to "curtab". (closes #6847)
+Files: src/evalwindow.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1582
+Problem: The channel log does not show typed text.
+Solution: Add raw typed text to the log file.
+Files: src/ui.c, src/os_win32.c
+
+Patch 8.2.1583
+Problem: MS-Windows: cannot easily measure code coverage.
+Solution: Add the COVERAGE option. (Ken Takata, closes #6842)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.1584
+Problem: Vim9: cannot use "true" for "skipstart" in prop_find().
+Solution: Use dict_get_bool() instead of tv_get_number(). (closes #6852)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.1585
+Problem: Messages in errors.h not translated, xgettext on MS-Windows not
+ fully supported.
+Solution: Add errors.h to list of input files. Update MS-Windows makefiles
+ to improve message translations. (Ken Takata, closes #6858)
+Files: src/po/Make_cyg.mak, src/po/Make_ming.mak, src/po/Make_mvc.mak,
+ src/po/Makefile, src/po/README.txt, src/po/fixfilenames.vim
+
+Patch 8.2.1586
+Problem: :resize command not fully tested.
+Solution: Add a couple of tests. (Dominique Pellé, closes #6857)
+Files: src/testdir/test_window_cmd.vim
+
+Patch 8.2.1587
+Problem: Loop for handling keys for the command line is too long.
+Solution: Move wild menu handling to separate functions. (Yegappan
+ Lakshmanan, closes #6856)
+Files: src/cmdexpand.c, src/proto/cmdexpand.pro, src/ex_getln.c
+
+Patch 8.2.1588
+Problem: Cannot read back the prompt of a prompt buffer.
+Solution: Add prompt_getprompt(). (Ben Jackson, closes #6851)
+Files: runtime/doc/channel.txt, runtime/doc/eval.txt,
+ runtime/doc/usr_41.txt, src/channel.c, src/edit.c, src/evalfunc.c,
+ src/proto/channel.pro, src/proto/edit.pro,
+ src/testdir/test_prompt_buffer.vim
+
+Patch 8.2.1589
+Problem: Term_start() options for size are overruled by 'termwinsize'.
+ (Sergey Vlasov)
+Solution: Set 'termwinsize' to the specified size.
+Files: src/terminal.c, src/testdir/test_terminal2.vim,
+ src/testdir/term_util.vim
+
+Patch 8.2.1590
+Problem: Vim9: bufnr() doesn't take "true" argument.
+Solution: use tv_get_bool_chk(). (closes #6863)
+Files: src/evalbuffer.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1591
+Problem: Using winheight('.') in tests works but is wrong.
+Solution: Use winheight(0). (issue #6863)
+Files: src/testdir/test_functions.vim, src/testdir/test_quickfix.vim
+
+Patch 8.2.1592
+Problem: Vim9: passing "true" to char2nr() fails.
+Solution: Use tv_get_bool_chk(). (closes #6865)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1593
+Problem: Tests do not check the error number properly.
+Solution: Add a colon after the error number. (closes #6869)
+Files: src/testdir/test_assert.vim, src/testdir/test_autocmd.vim,
+ src/testdir/test_backspace_opt.vim, src/testdir/test_channel.vim,
+ src/testdir/test_clientserver.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_const.vim, src/testdir/test_cscope.vim,
+ src/testdir/test_eval_stuff.vim, src/testdir/test_functions.vim,
+ src/testdir/test_global.vim, src/testdir/test_gui.vim,
+ src/testdir/test_hlsearch.vim, src/testdir/test_lambda.vim,
+ src/testdir/test_let.vim, src/testdir/test_listdict.vim,
+ src/testdir/test_move.vim, src/testdir/test_normal.vim,
+ src/testdir/test_popupwin.vim, src/testdir/test_put.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_rename.vim,
+ src/testdir/test_search.vim, src/testdir/test_signs.vim,
+ src/testdir/test_substitute.vim, src/testdir/test_syntax.vim,
+ src/testdir/test_tagfunc.vim, src/testdir/test_tagjump.vim,
+ src/testdir/test_taglist.vim, src/testdir/test_terminal.vim,
+ src/testdir/test_terminal2.vim, src/testdir/test_textprop.vim,
+ src/testdir/test_timers.vim, src/testdir/test_true_false.vim,
+ src/testdir/test_user_func.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_vimscript.vim,
+ src/testdir/test_winbar.vim, src/testdir/test_winbuf_close.vim,
+ src/testdir/test_window_cmd.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.1594
+Problem: Pull requests on github do not notify a maintainer.
+Solution: Add a CODEOWNERS file with a few initial entries.
+Files: Filelist, .github/CODEOWNERS
+
+Patch 8.2.1595
+Problem: Cannot easily see what Vim sends to the terminal.
+Solution: Write output to the channel log if it contains terminal control
+ sequences. Avoid warnings for tputs() argument.
+Files: src/term.c, src/globals.h, src/edit.c, src/normal.c,
+ src/optionstr.c
+
+Patch 8.2.1596
+Problem: Using win_screenpos('.') in tests works but is wrong.
+Solution: Use win_screenpos(0).
+Files: src/testdir/test_terminal3.vim
+
+Patch 8.2.1597
+Problem: The channel source file is too big.
+Solution: Move job related code to a new source file.
+Files: Filelist, src/Makefile, src/Make_mvc.mak, src/Make_cyg_ming.mak,
+ src/channel.c, src/proto/channel.pro, src/job.c,
+ src/proto/job.pro, src/proto.h, src/edit.c, src/proto/edit.pro,
+ src/globals.h, src/configure.ac, src/auto/configure
+
+Patch 8.2.1598
+Problem: Starting a hidden terminal resizes the current window.
+Solution: Do not resize the current window for a hidden terminal.
+ (closes #6872)
+Files: src/terminal.c, src/testdir/test_terminal2.vim
+
+Patch 8.2.1599
+Problem: Missing line end when skipping a long line with :cgetfile.
+Solution: Fix off-by-one error. (closes #6870)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.1600
+Problem: Vim9: cannot use "true" with deepcopy().
+Solution: Use tv_get_bool_chk(). (closes #6867)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_listdict.vim
+
+Patch 8.2.1601
+Problem: Vim9: cannot use "true" with garbagecollect().
+Solution: Use tv_get_bool(). (closes #6871)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1602
+Problem: Vim9: cannot use "true" with getbufinfo().
+Solution: Use dict_get_bool(). (closes #6873)
+Files: src/evalbuffer.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1603
+Problem: Vim9: cannot use "true" with getchar().
+Solution: use tv_get_bool_chk(). (closes #6874)
+Files: src/getchar.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1604
+Problem: Vim9: cannot use "true" with getcompletion().
+Solution: use tv_get_bool_chk(). (closes #6875)
+Files: src/cmdexpand.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1605
+Problem: Default maintainer on github is wrong.
+Solution: Use Bram's account.
+Files: .github/CODEOWNERS
+
+Patch 8.2.1606
+Problem: Vim9: cannot use "true" with has().
+Solution: Use tv_get_bool(). (closes #6876)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1607
+Problem: Vim9: getchar() test fails on MS-Windows.
+Solution: First consume any available input.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1608
+Problem: Vim9: getchar() test fails with GUI.
+Solution: Avoid that getchar(0) gets stuck on K_IGNORE.
+Files: src/getchar.c
+
+Patch 8.2.1609
+Problem: Vim9: test fails when build without +channel.
+Solution: Add check for +channel. (closes #6879)
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1610
+Problem: Vim9: cannot pass "true" to list2str() and str2list().
+Solution: Use tv_get_bool_chk(). (closes #6877)
+Files: src/evalfunc.c, src/list.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1611
+Problem: Vim9: cannot pass "true" to nr2char().
+Solution: use tv_get_bool_chk(). (closes #6878)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1612
+Problem: Vim9: cannot pass "true" to prop_remove().
+Solution: Use dict_get_bool(). (closes #6853)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.1613
+Problem: Vim9: cannot pass "true" to prop_type_add().
+Solution: Use tv_get_bool(). (closes #6850)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.1614
+Problem: Vim9: cannot pass "true" to searchcount().
+Solution: Use tv_get_bool_chk(). (closes #6854)
+Files: src/search.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1615
+Problem: Vim9: cannot pass "true" to searchdecl().
+Solution: use tv_get_bool_chk(). (closes #6881)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1616
+Problem: Vim9: cannot pass "true" to synID().
+Solution: Use tv_get_bool_chk(). (closes #6860)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1617
+Problem: Vim9: cannot pass "true" to win_splitmove().
+Solution: Use dict_get_bool(). (closes #6862) Alphabetize test functions.
+Files: src/evalwindow.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1618
+Problem: Vim9: cannot pass "true" to setloclist().
+Solution: Use dict_get_bool(). (closes #6882)
+Files: src/quickfix.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1619
+Problem: Vim9: cannot pass "true" to spellsuggest().
+Solution: Use tv_get_bool_chk(). (closes #6883)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1620
+Problem: searchcount() test fails.
+Solution: Restore default flag value.
+Files: src/search.c
+
+Patch 8.2.1621
+Problem: Crash when using submatch(0, 1) in substitute().
+Solution: Increment reference count. (closes #6887)
+Files: src/regexp.c, src/testdir/test_substitute.vim
+
+Patch 8.2.1622
+Problem: Loop to handle keys for the command line is too long.
+Solution: Move code to functions. (Yegappan Lakshmanan, closes #6880)
+Files: src/ex_getln.c
+
+Patch 8.2.1623
+Problem: Vim9: using :call where it is not needed.
+Solution: Remove :call. (closes #6892)
+Files: src/testdir/test_maparg.vim, src/testdir/test_textprop.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1624
+Problem: Vim9: cannot pass "true" to split(), str2nr() and strchars().
+Solution: Use tv_get_bool_chk(). (closes #6884, closes #6885, closes #6886)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1625
+Problem: Compiler warning for use of fptr_T.
+Solution: Make the type less strict.
+Files: src/regexp.c
+
+Patch 8.2.1626
+Problem: Test for strchars() fails with different error number.
+Solution: Adjust the error number.
+Files: src/testdir/test_utf8.vim
+
+Patch 8.2.1627
+Problem: Vim9: cannot pass "true" to submatch(), term_gettty() and
+ term_start()
+Solution: Use tv_get_bool_chk(). (closes #6888, closes #6890, closes #6889)
+Files: src/evalfunc.c, src/terminal.c, src/job.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1628
+Problem: Vim9: cannot pass "true" to timer_paused().
+Solution: Use tv_get_bool(). (closes #6891)
+Files: src/time.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1629
+Problem: Test fails without terminal feature.
+Solution: Check for terminal feature.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1630
+Problem: Terminal test fails.
+Solution: Correct argument to term_start(). Correct error number.
+Files: src/testdir/test_terminal.vim, src/testdir/test_terminal2.vim
+
+Patch 8.2.1631
+Problem: test_fails() does not check the context of the line number.
+Solution: Use another argument to specify the context of the line number.
+Files: runtime/doc/testing.txt, runtime/doc/eval.txt,
+ src/testdir/test_vim9_func.vim, src/testing.c, src/globals.h,
+ src/evalfunc.c, src/message.c
+
+Patch 8.2.1632
+Problem: Not checking the context of test_fails().
+Solution: Add the line number and context arguments. Give error if
+ assert_fails() argument types are wrong.
+Files: src/testing.c, src/errors.h, src/testdir/test_assert.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1633
+Problem: Some error messages are internal but do not use iemsg().
+Solution: Use iemsg(). (Dominique Pellé, closes #6894)
+Files: src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c
+
+Patch 8.2.1634
+Problem: Loop to handle keys for the command line is too long.
+Solution: Move a few more parts to separate functions. (Yegappan Lakshmanan,
+ closes #6895)
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.1635
+Problem: No digraph for 0x2022 BULLET.
+Solution: Use "oo". (Hans Ginzel, closes #6904)
+Files: src/digraph.c, runtime/doc/digraph.txt
+
+Patch 8.2.1636
+Problem: Get stuck if a popup filter causes an error.
+Solution: Check whether the function can be called and does not cause an
+ error. (closes #6902)
+Files: src/structs.h, src/popupwin.c, src/testdir/test_popupwin.vim
+ src/testdir/dumps/Test_popupwin_wrong_name.dump,
+ src/testdir/dumps/Test_popupwin_three_errors_1.dump,
+ src/testdir/dumps/Test_popupwin_three_errors_2.dump
+
+Patch 8.2.1637
+Problem: Vim9: :put ={expr} does not work inside :def function.
+Solution: Add ISN_PUT. (closes #6397)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/register.c,
+ src/proto/register.pro, src/edit.c, src/ex_docmd.c, src/mouse.c,
+ src/normal.c, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1638
+Problem: Leaking memory when popup filter function can't be called.
+Solution: Don't return too soon.
+Files: src/popupwin.c
+
+Patch 8.2.1639
+Problem: Options window cannot be translated.
+Solution: Get the translation for "local to" texts once and use them in many
+ places. Fix that 'whichwrap' is not a local option. (issue #6800)
+Files: runtime/optwin.vim
+
+Patch 8.2.1640
+Problem: Amiga: missing header for getgrgid().
+Solution: Add the grp.h header. (Ola Söder, closes #6906)
+Files: src/os_amiga.h
+
+Patch 8.2.1641
+Problem: Vim9: cannot use 0 or 1 where a bool is expected.
+Solution: Allow using 0 and 1 for a bool type. (closes #6903)
+Files: src/vim9compile.c, src/vim9type.c, src/proto/vim9type.pro,
+ src/structs.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1642
+Problem: Options test fails.
+Solution: Correct call to OptionG().
+Files: runtime/optwin.vim
+
+Patch 8.2.1643
+Problem: Vim9: :defcompile compiles dead functions.
+Solution: Skip over dead functions.
+Files: src/userfunc.c
+
+Patch 8.2.1644
+Problem: Vim9: cannot assign 1 and 0 to bool at script level.
+Solution: Add the TTFLAG_BOOL_OK flag to the type. Fix name of test
+ function.
+Files: src/vim9type.c, src/testdir/test_vim9_script.vim,
+ src/testdir/vim9.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1645
+Problem: GTK3: icons become broken images when resized.
+Solution: Use gtk_image_new_from_icon_name(). (closes #6916)
+ Fix compiler warnings.
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.1646
+Problem: Amiga: Unnecessary #include.
+Solution: Remove the #include. (Ola Söder, closes #6908)
+Files: src/version.c
+
+Patch 8.2.1647
+Problem: Vim9: result of expression with && and || cannot be assigned to a
+ bool variable.
+Solution: Add the TTFLAG_BOOL_OK flag and convert the value if needed.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1648
+Problem: Amiga: no common build file for Amiga (-like) systems.
+Solution: Turn Make_morph.mak into Make_ami.mak. (Ola Söder, closes #6805)
+Files: Filelist, src/Make_ami.mak, src/Make_morph.mak, src/INSTALLami.txt
+
+Patch 8.2.1649
+Problem: GTK3: using old file chooser.
+Solution: Use native file chooser on GTK 3.20 and above. (Yogeshwar
+ Velingker, closes #6909)
+Files: src/gui_gtk.c
+
+Patch 8.2.1650
+Problem: Vim9: result of && and || expression cannot be assigned to a bool
+ at the script level.
+Solution: Add the VAR_BOOL_OK flag. Convert to bool when needed.
+Files: src/structs.h, src/vim9type.c, src/proto/vim9type.pro,
+ src/vim9script.c, src/evalvars.c, src/eval.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1651
+Problem: Spellfile code not completely tested.
+Solution: Add a few more test cases. (Yegappan Lakshmanan, closes #6918)
+Files: src/testdir/test_spellfile.vim
+
+Patch 8.2.1652
+Problem: Cannot translate lines in the options window.
+Solution: Use the AddOption() function to split descriptions where indicated
+ by a line break. (issue #6800)
+Files: runtime/optwin.vim
+
+Patch 8.2.1653
+Problem: Expand('<stack>') does not include the final line number.
+Solution: Add the line number. (closes #6927)
+Files: src/vim.h, src/scriptfile.c, src/proto/scriptfile.pro,
+ src/debugger.c, src/ex_docmd.c, src/ex_eval.c, src/message.c,
+ src/testing.c, src/testdir/test_expand_func.vim
+
+Patch 8.2.1654
+Problem: When job writes to hidden buffer current window has display
+ errors. (Johnny McArthur)
+Solution: Use aucmd_prepbuf() instead of switch_to_win_for_buf().
+ (closes #6925)
+Files: src/channel.c
+
+Patch 8.2.1655
+Problem: Cannot build with Strawberry Perl 5.32.0.
+Solution: Use Perl_sv_2pvbyte_flags. (closes #6921)
+Files: src/if_perl.xs
+
+Patch 8.2.1656
+Problem: Vim9: callstack wrong if :def function calls :def function.
+Solution: Set the line number before calling. (closes #6914)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1657
+Problem: Vim9: no proper error for nested ":def!".
+Solution: Check for "!". (closes #6920)
+Files: src/errors.h, src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1658
+Problem: Expand('<stack>') has trailing "..".
+Solution: Remove the "..". (closes #6927)
+Files: src/scriptfile.c, src/testdir/test_expand_func.vim
+
+Patch 8.2.1659
+Problem: Spellfile code not completely tested.
+Solution: Add a few more test cases. (Yegappan Lakshmanan, closes #6929)
+Files: src/testdir/test_spell.vim, src/testdir/test_spellfile.vim
+
+Patch 8.2.1660
+Problem: Assert functions require passing expected result as the first
+ argument, which isn't obvious.
+Solution: Use a method, as in "runtest()->assert_equal(expected)".
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1661
+Problem: Cannot connect to 127.0.0.1 for host with only IPv6 addresses.
+Solution: pass AI_V4MAPPED flag to getaddrinfo. (Filipe Brandenburger,
+ closes #6931)
+Files: src/channel.c
+
+Patch 8.2.1662
+Problem: :mksession does not restore shared terminal buffer properly.
+Solution: Keep a hashtab with terminal buffers. (Rob Pilling, closes #6930)
+Files: src/hashtab.c, src/proto/terminal.pro, src/session.c,
+ src/terminal.c, src/testdir/test_mksession.vim
+
+Patch 8.2.1663
+Problem: Options window entries cannot be translated.
+Solution: Use AddOption() for all explanations. (closes #6800)
+Files: runtime/optwin.vim
+
+Patch 8.2.1664
+Problem: Memory leak when using :mkview with a terminal buffer.
+Solution: Don't use a hastab for :mkview. (Rob Pilling, closes #6935)
+Files: src/session.c, src/terminal.c, src/testdir/test_mksession.vim
+
+Patch 8.2.1665
+Problem: Cannot do fuzzy string matching.
+Solution: Add matchfuzzy(). (Yegappan Lakshmanan, closes #6932)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/proto/search.pro, src/search.c, src/testdir/test_functions.vim
+
+Patch 8.2.1666
+Problem: The initial value of 'backupskip' can have duplicate items.
+Solution: Remove duplicates, like when it is set later. (Tom Ryder,
+ closes #6940)
+Files: src/option.c, src/testdir/test_options.vim
+
+Patch 8.2.1667
+Problem: Local function name cannot shadow a global function name.
+Solution: Ignore global functions when checking a script-local or scoped
+ function name. (closes #6926)
+Files: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1668
+Problem: Vim9: not accepting 0 or 1 as bool when type is any.
+Solution: Convert the type with the CHECKTYPE instruction. (closes #6913)
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1669
+Problem: Vim9: memory leak when storing a value fails.
+Solution: Free the value when not storing it.
+Files: src/evalvars.c
+
+Patch 8.2.1670
+Problem: A couple of gcc compiler warnings.
+Solution: Initialize local variables. (Dominique Pellé, closes #6944)
+Files: src/memline.c, src/option.c
+
+Patch 8.2.1671
+Problem: Vim9: stray error for missing white space.
+Solution: Do not skip over white space after member. (closes #6917)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1672
+Problem: v_lock is used when it is not initialized. (Yegappan Lakshmanan)
+Solution: Initialize the typval in eval1().
+Files: src/eval.c
+
+Patch 8.2.1673
+Problem: complete_info() selected index has an invalid value. (Ben Jackson)
+Solution: Set the index when there is only one match. (closes #6945)
+ Add test for complete_info().
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.1674
+Problem: Vim9: internal error when using variable that was not set.
+Solution: Give a meaningful error. (closes #6937)
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1675
+Problem: MinGW: testdir makefile deletes non-existing file.
+Solution: Use another way to delete the output file if it already exists.
+ (Michael Soyka)
+Files: src/testdir/Make_ming.mak
+
+Patch 8.2.1676
+Problem: Compiler warnings for function typecast.
+Solution: Add an intermediate cast to "void *".
+Files: src/os_unix.c
+
+Patch 8.2.1677
+Problem: Memory access errors when calling setloclist() in an autocommand.
+Solution: Give an error if the list was changed unexpectedly. (closes #6946)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.1678
+Problem: Crash when using ":set" after ":ownsyntax". (Dhiraj Mishra)
+Solution: Make sure 'spelloptions' is not NULL. (closes #6950)
+Files: src/syntax.c, src/testdir/test_syntax.vim
+
+Patch 8.2.1679
+Problem: Vim9: ":*" is not recognized as a range.
+Solution: Move recognizing "*" into skip_range(). (closes #6938)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/cmdexpand.c,
+ src/ex_getln.c, src/userfunc.c, src/vim9compile.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1680
+Problem: Vim9: line number for compare error is wrong.
+Solution: Set SOURCING_LNUM. (closes #6936)
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1681
+Problem: Vim9: unnecessary :call commands in tests.
+Solution: Remove the commands. (issue #6936)
+Files: src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1682
+Problem: Vim9: const works in an unexpected way.
+Solution: ":const" only disallows changing the variable, not the value.
+ Make "list[0] = 9" work at the script level.
+Files: src/vim9compile.c, src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1683
+Problem: Vim9: assignment test fails.
+Solution: Include changes to find Ex command.
+Files: src/ex_docmd.c
+
+Patch 8.2.1684
+Problem: "gF" does not use line number after file in Visual mode.
+Solution: Look for ":123" after the Visual area. (closes #6952)
+Files: src/findfile.c, src/testdir/test_gf.vim
+
+Patch 8.2.1685
+Problem: Vim9: cannot declare a constant value.
+Solution: Introduce ":const!".
+Files: runtime/doc/vim9.txt, src/ex_cmds.h, src/vim9compile.c,
+ src/vim9.h, src/vim9execute.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/errors.h, src/vim.h, src/eval.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1686
+Problem: Vim9: "const!" not sufficiently tested.
+Solution: Add a few more test cases. Fix type checking.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1687
+Problem: Vim9: out of bounds error.
+Solution: Check that cmdidx is not negative.
+Files: src/vim9compile.c
+
+Patch 8.2.1688
+Problem: Increment/decrement removes text property.
+Solution: Insert the new number before deleting the old one. (closes #6962)
+Files: src/ops.c, src/testdir/test_textprop.vim
+
+Patch 8.2.1689
+Problem: 'colorcolumn' doesn't show in indent.
+Solution: Also draw the column when draw_state is WL_BRI or WL_SBR.
+ (Alexey Demin, closes #6948, closes #6619)
+Files: src/drawline.c, src/testdir/dumps/Test_colorcolumn_2.dump,
+ src/testdir/dumps/Test_colorcolumn_3.dump,
+ src/testdir/test_highlight.vim
+
+Patch 8.2.1690
+Problem: Text properties not adjusted for "I" in Visual block mode.
+Solution: Call inserted_bytes(). (closes #6961)
+Files: src/ops.c, src/change.c, src/proto/change.pro,
+ src/testdir/test_textprop.vim
+
+Patch 8.2.1691
+Problem: Vim9: list<any> is not accepted where list<number> is expected.
+Solution: Add functions to allocate and free a type_T, use it in
+ ISN_CHECKTYPE. (closes #6959)
+Files: src/vim9.h, src/globals.h, src/vim9compile.c, src/vim9execute.c,
+ src/vim9type.c, src/proto/vim9type.pro, src/errors.h,
+ src/evalfunc.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1692
+Problem: Build fails because TTFLAG_STATIC is missing.
+Solution: Include missing change.
+Files: src/structs.h
+
+Patch 8.2.1693
+Problem: "hi def" does not work for cleared highlight.
+Solution: Check the "sg_cleared" flag. (Maxim Kim, closes #6956,
+ closes #4405)
+Files: src/highlight.c, src/testdir/test_highlight.vim
+
+Patch 8.2.1694
+Problem: Compiler warning for loss if data.
+Solution: Add typecast.
+Files: src/ops.c
+
+Patch 8.2.1695
+Problem: Vim9: crash when using varargs type "any".
+Solution: Check if uf_va_type is &t_any. (closes #6957)
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1696
+Problem: Unused (duplicate) macros.
+Solution: Remove the macros.
+Files: src/spell.c
+
+Patch 8.2.1697
+Problem: Inconsistent capitalization of error messages.
+Solution: Always start with a capital.
+Files: src/errors.h, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim,
+ src/testdir/test_assert.vim
+
+Patch 8.2.1698
+Problem: Cannot lock a variable in legacy Vim script like in Vim9.
+Solution: Make ":lockvar 0" work.
+Files: runtime/doc/eval.txt, src/evalvars.c, src/proto/evalvars.pro,
+ src/dict.c, src/eval.c, src/list.c, src/typval.c, src/userfunc.c,
+ src/testdir/test_const.vim, src/testdir/test_listdict.vim
+
+Patch 8.2.1699
+Problem: Build failure due to missing error message.
+Solution: Add error message.
+Files: src/errors.h
+
+Patch 8.2.1700
+Problem: Vim9: try/catch causes wrong value to be returned.
+Solution: Reset tcd_return. (closes #6964)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1701
+Problem: Vim9: sort("i") does not work.
+Solution: Don't try getting a number for a string argument. (closes #6958)
+Files: src/list.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1702
+Problem: Crash when using undo after deleting folded lines.
+Solution: Check for NULL pointer. (closes #6968)
+Files: src/fold.c, src/testdir/test_fold.vim
+
+Patch 8.2.1703
+Problem: ":highlight clear" does not restore default link.
+Solution: Remember the default link and restore it. (Antony Scriven,
+ closes #6970, closes #4405)
+Files: runtime/doc/syntax.txt, src/highlight.c,
+ src/testdir/test_highlight.vim
+
+Patch 8.2.1704
+Problem: Vim9: crash in for loop when autoload script has an error.
+Solution: Reset suppress_errthrow. Check for NULL list. (closes #6967)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1705
+Problem: "verbose hi Name" reports incorrect info after ":hi clear".
+Solution: Store the script context. (Antony Scriven, closes #6975)
+Files: src/highlight.c, src/testdir/test_highlight.vim
+
+Patch 8.2.1706
+Problem: Vim9: crash after running into the "Multiple closures" error.
+Solution: When a function fails still update any closures. (closes #6973)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1707
+Problem: Small inconsistency in highlight test.
+Solution: Use one argument for :execute. (Antony Scriven, #6975)
+Files: src/testdir/test_highlight.vim
+
+Patch 8.2.1708
+Problem: Vim9: error message for function has unprintable characters.
+Solution: use printable_func_name(). (closes #6965)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1709
+Problem: Vim9: memory leak when using multiple closures.
+Solution: Free the partial.
+Files: src/vim9execute.c
+
+Patch 8.2.1710
+Problem: Vim9: list of list type can be wrong.
+Solution: Use VAR_UNKNOWN for empty list. Recognize VAR_UNKNOWN when
+ looking for a common type. (closes #6979)
+Files: src/vim9type.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1711
+Problem: Vim9: leaking memory when using partial.
+Solution: Do delete the function even when it was compiled.
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
+ src/vim9execute.c
+
+Patch 8.2.1712
+Problem: Vim9: leaking memory when calling a lambda.
+Solution: Decrement function reference from ISN_DCALL.
+Files: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro
+
+Patch 8.2.1713
+Problem: Motif GUI: crash when setting menu colors. (Andrzej Bylicki)
+Solution: Add {} to make "n" incremented correctly. (closes #6989,
+ closes #5948)
+Files: src/gui_motif.c
+
+Patch 8.2.1714
+Problem: Text properties corrupted with substitute command. (Filipe
+ Brandenburger)
+Solution: Get the changed line again after using u_savesub(). (closes #6984)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.1715
+Problem: Motif GUI: commented out code missed {}.
+Solution: Add {} and reenable the code. (similar to #6989)
+Files: src/gui_motif.c
+
+Patch 8.2.1716
+Problem: Options window has duplicate translations.
+Solution: Make one entry for "global or local to buffer". Fix wrong text.
+ (closes #6983)
+Files: runtime/optwin.vim
+
+Patch 8.2.1717
+Problem: MS-Windows installer doesn't have Russian translations.
+Solution: Add Russian translations. (closes #6985)
+Files: nsis/gvim.nsi, nsis/lang/russian.nsi
+
+Patch 8.2.1718
+Problem: Vim9: :def function disallows "firstline" and "lastline" argument
+ names for no good reason.
+Solution: Don't check the arguments for a :def function. (closes #6986)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1719
+Problem: Vim9: no error if comma is missing in between arguments.
+Solution: Give an error message.
+Files: src/errors.h, src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1720
+Problem: Vim9: memory leak with heredoc that isn't executed. (Dominique
+ Pellé)
+Solution: Don't clear the list items. (closes #6991)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1721
+Problem: MS-Windows installer doesn't work.
+Solution: Write "Russian" in ASCII. (closes #6995, see #6985).
+Files: nsis/lang/russian.nsi
+
+Patch 8.2.1722
+Problem: Vim9: cannot assign a lambda to a variable of type function.
+Solution: Allow for assigning a partial to a variable of type function.
+ (Naruhiko Nishino, closes #6996)
+Files: src/vim9type.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1723
+Problem: Vim9: Variable argument name cannot start with underscore.
+Solution: Use eval_isnamec1(). (closes #6988)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1724
+Problem: Vim9: assignment tests spread out.
+Solution: Create new test file for assignment tests.
+Files: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/Make_all.mak
+
+Patch 8.2.1725
+Problem: Not all Pascal files are recognized.
+Solution: Add filetype patterns. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1726
+Problem: Fuzzy matching only works on strings.
+Solution: Support passing a dict. Add matchfuzzypos() to also get the match
+ positions. (Yegappan Lakshmanan, closes #6947)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/proto/search.pro, src/search.c, src/testdir/Make_all.mak,
+ src/testdir/test_functions.vim, src/testdir/test_matchfuzzy.vim
+
+Patch 8.2.1727
+Problem: A popup created with "cursorline" will ignore "firstline".
+Solution: When both "cursorline" and "firstline" are present put the cursor
+ on "firstline". (closes #7000) Add the "winid" argument to
+ getcurpos().
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/popupwin.c,
+ src/evalwindow.c, src/testdir/test_popupwin.vim,
+ src/testdir/test_functions.vim
+
+Patch 8.2.1728
+Problem: Compiler warning for using uninitialized variable. (John Marriott)
+Solution: Initialize "neighbor".
+Files: src/search.c
+
+Patch 8.2.1729
+Problem: Endless loop when ":normal" feeds popup window filter.
+Solution: Add the ex_normal_busy_done flag.
+Files: src/globals.h, src/getchar.c, src/evalfunc.c, src/ex_docmd.c,
+ src/menu.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_normal_cmd.dump
+
+Patch 8.2.1730
+Problem: Vim9: cannot use member of unknown type.
+Solution: When type is unknown use "any". (closes #6997)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1731
+Problem: Vim9: cannot use += to append to empty NULL list.
+Solution: Copy the list instead of extending it. (closes #6998)
+Files: src/eval.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1732
+Problem: Stuck when win_execute() for a popup causes an error.
+Solution: Disable the filter callback on error. (issue #6999)
+Files: src/popupwin.c, src/testdir/term_util.vim,
+ src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_win_execute.dump
+
+Patch 8.2.1733
+Problem: Vim9: memory leaks when using nested function.
+Solution: Free function when compilation fails.
+Files: src/vim9compile.c
+
+Patch 8.2.1734
+Problem: Vim9: cannot use a funcref for a closure twice.
+Solution: Instead of putting the funcref on the stack use a growarray on the
+ execution context.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1735
+Problem: Github actions appear to timeout too soon.
+Solution: use "timeout" instead of "ping".
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1736
+Problem: Failure to compile a pattern not tested much.
+Solution: Add tests where a pattern fails to compile. (Yegappan Lakshmanan,
+ closes #7004)
+Files: src/testdir/gen_opt_test.vim, src/testdir/test_arglist.vim,
+ src/testdir/test_autocmd.vim, src/testdir/test_buffer.vim,
+ src/testdir/test_checkpath.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_debugger.vim, src/testdir/test_functions.vim,
+ src/testdir/test_history.vim, src/testdir/test_listdict.vim,
+ src/testdir/test_options.vim, src/testdir/test_search_stat.vim,
+ src/testdir/test_sort.vim, src/testdir/test_substitute.vim,
+ src/testdir/test_syntax.vim, src/testdir/test_tagjump.vim,
+ src/testdir/test_user_func.vim
+
+Patch 8.2.1737
+Problem: Cursor line highlight in popup window is not always updated.
+Solution: Check if the cursor has moved. (closes #7010)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+ src/testdir/dumps/Test_popupwin_win_execute_cursorline.dump
+
+Patch 8.2.1738
+Problem: Mac: str2float() recognizes comma instead of decimal point.
+Solution: Set LC_NUMERIC to "C". (closes #7003)
+Files: src/os_mac_conv.c
+
+Patch 8.2.1739
+Problem: Vim9: crash when compiling a manually defined function. (Antony
+ Scriven)
+Solution: Check that the script ID is positive. (closes #7012)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1740
+Problem: Test fails without the terminal feature.
+Solution: Skip test if the terminal feature is not available.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1741
+Problem: pathshorten() only supports using one character.
+Solution: Add an argument to control the length. (closes #7006)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/filepath.c,
+ src/proto/filepath.pro, src/testdir/test_functions.vim
+
+Patch 8.2.1742
+Problem: Test still fails without the terminal feature.
+Solution: Put check for terminal feature in separate function.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.1743
+Problem: Cannot build without the eval feature.
+Solution: Move shorten_dir outside of #ifdef.
+Files: src/filepath.c
+
+Patch 8.2.1744
+Problem: Vim9: using ":const!" is weird.
+Solution: Use "var" - "final" - "const" like Dart. "let" still works for
+ now.
+Files: runtime/doc/vim9.txt, src/ex_cmds.h, src/errors.h, src/evalvars.c,
+ src/proto/evalvars.pro, src/cmdexpand.c, src/eval.c,
+ src/ex_docmd.c, src/vim9compile.c, src/vim9execute.c,
+ src/vim9script.c, src/vim.h, src/ex_cmdidxs.h,
+ src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1745
+Problem: Tiny version doesn't build.
+Solution: Add dummy ex_var() function.
+Files: src/ex_docmd.c
+
+Patch 8.2.1746
+Problem: Vim9: Cannot use "fina" for "finally". (Naruhiko Nishino)
+Solution: Specifically check for "fina". (closes #7020)
+Files: src/ex_docmd.c, src/testdir/test_trycatch.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1747
+Problem: Result of expand() unexpectedly depends on 'completeslash'.
+Solution: Temporarily reset 'completeslash'. (Yasuhiro Matsumoto,
+ closes #7021)
+Files: src/evalfunc.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.1748
+Problem: Closing split window in other tab may cause a crash.
+Solution: Set tp_curwin properly. (Rob Pilling, closes #7018)
+Files: src/window.c, src/testdir/test_winbuf_close.vim
+
+Patch 8.2.1749
+Problem: Vim9: crash when closure fails in nested function.
+Solution: Handle function returns before dereferencing remaining closures.
+ (closes #7008)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1750
+Problem: Setting firstline with popup_setoptions() fails if cursorline is
+ set.
+Solution: Use apply_options(). Update the popup before applying "zz".
+ (closes #7010)
+Files: src/popupwin.c, src/proto/popupwin.pro, src/move.c,
+ src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_win_execute_cursorline.dump,
+ src/testdir/dumps/Test_popupwin_set_firstline_1.dump,
+ src/testdir/dumps/Test_popupwin_set_firstline_2.dump
+
+Patch 8.2.1751
+Problem: Using 2 where bool is expected may throw an error.
+Solution: Make this backwards compatible.
+Files: src/typval.c, src/evalfunc.c, src/testdir/test_search.vim,
+ src/testdir/test_terminal2.vim
+
+Patch 8.2.1752
+Problem: GTK GUI: cannot map alt-? with <A-?>. (Ingo Karkat)
+Solution: Adjust the characters for which the shift modifier is removed.
+ (closes #7016) Make Motif and Win32 use the same function as GTK.
+Files: src/misc2.c, src/gui_x11.c, src/gui_w32.c,
+ src/testdir/test_termcodes.vim
+
+Patch 8.2.1753
+Problem: Vim9: crash when using import at script level.
+Solution: Give a "not implemented yet" error. (closes #7026)
+Files: src/evalvars.c
+
+Patch 8.2.1754
+Problem: Completion with spell checking not tested.
+Solution: Add a test case. (Dominique Pellé, closes #7024)
+Files: src/testdir/test_spell.vim
+
+Patch 8.2.1755
+Problem: Vim9: crash when using invalid heredoc marker. (Dhiraj Mishra)
+Solution: Check for NULL list. (closes #7027) Fix comment character.
+Files: src/vim9compile.c, src/evalvars.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1756
+Problem: Vim9: :let will soon be disallowed.
+Solution: Add v:disallow_let temporarily. Fix tests.
+Files: src/vim.h, src/errors.h, src/evalvars.c, src/vim9compile.c,
+ src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1757
+Problem: Mac: default locale is lacking the encoding.
+Solution: Add ".UTF-8 to the locale. (Yee Cheng Chin, closes #7022)
+Files: src/os_mac_conv.c, src/testdir/test_environ.vim
+
+Patch 8.2.1758
+Problem: Vim9: type of unmaterialized list is wrong.
+Solution: Use list<number>.
+Files: src/vim9type.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1759
+Problem: Vim9: Some tests are still using :let.
+Solution: Change more declarations to use :var.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1760
+Problem: Vim9: crash when end marker is missing. (Dhiraj Mishra)
+Solution: Check for end of function lines. (closes #7031)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1761
+Problem: Vim9: Some tests are still using :let.
+Solution: Change more declarations to use :var.
+Files: src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1762
+Problem: When a timer uses :stopinsert Insert mode completion isn't
+ stopped. (Stanley Chan)
+Solution: Call ins_compl_prep(ESC).
+Files: src/edit.c, src/testdir/test_ins_complete.vim,
+ src/testdir/dumps/Test_pum_stopped_by_timer.dump
+
+Patch 8.2.1763
+Problem: Vim9: cannot use "true" for popup window scrollbar option.
+Solution: use dict_get_bool(). (closes #7029)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1764
+Problem: Vim9: no error when assigning to script var with wrong type.
+Solution: Fix off-by-one error. (closes #7028)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1765
+Problem: Vim9: some tests use "var var".
+Solution: Use "var name". (closes #7032)
+Files: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1766
+Problem: Vim9: Some tests are still using :let.
+Solution: Change the last few declarations to use :var.
+Files: src/testdir/runtest.vim, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_maparg.vim,
+ src/testdir/test_popupwin.vim, src/testdir/test_textprop.vim
+
+Patch 8.2.1767
+Problem: Vim9: test fails with python support.
+Solution: Use "let" in legacy function.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1768
+Problem: Cannot use the help menu from a terminal window.
+Solution: Add ":tlnoremenu" commands. (Yee Cheng Chin, closes #7023)
+Files: runtime/menu.vim, src/testdir/test_gui.vim
+
+Patch 8.2.1769
+Problem: A popup filter interferes with using :normal to move the cursor in
+ a popup.
+Solution: Do not invoke the filter when ex_normal_busy is set.
+Files: runtime/doc/popup.txt, src/getchar.c, src/evalfunc.c,
+ src/ex_docmd.c, src/menu.c, src/globals.h,
+ src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_normal_cmd.dump
+
+Patch 8.2.1770
+Problem: Invalid memory use when using SpellFileMissing autocmd.
+Solution: Add test case. (Dominique Pellé, closes #7036) Fix using a window
+ that was closed.
+Files: src/spell.c, src/testdir/test_spell.vim
+
+Patch 8.2.1771
+Problem: synIDattr() cannot get the value of ctermul.
+Solution: Add the "ul" value for "what". (closes #7037)
+Files: runtime/doc/eval.txt, src/highlight.c, src/evalfunc.c,
+ src/testdir/test_highlight.vim
+
+Patch 8.2.1772
+Problem: Cannot use CTRL-W <Down> to move out of a terminal window.
+Solution: Use special_to_buf() instead of mb_char2bytes(). (closes #7045)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.1773
+Problem: Crash when calling mapset() with a list as first argument.
+Solution: Check for NULL. (closes #7040)
+Files: src/map.c, src/testdir/test_maparg.vim
+
+Patch 8.2.1774
+Problem: GTK: hang when forced to exit.
+Solution: Do not clean up "mainwin" when really_exiting is set.
+ (Zdenek Dohnal, closes #7042)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.1775
+Problem: MS-Windows: adding a long quickfix list is slow.
+Solution: Shorten the buffer name only for the first entry. (Yegappan
+ Lakshmanan, closes #7039, closes #7033)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.1776
+Problem: Filetype.vim may be loaded twice.
+Solution: Do "syntax on" after "filetype on". (Adam Stankiewicz,
+ closes #7049)
+Files: runtime/defaults.vim
+
+Patch 8.2.1777
+Problem: Vim9: some assignment tests in the wrong file.
+Solution: Move assignment tests to test_vim9_assign.
+Files: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1778
+Problem: Vim9: returning from a partial call clears outer context, causing
+ a crash.
+Solution: Put the outer context in the stack frame. (closes #7044)
+Files: src/vim9execute.c, src/vim9.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1779
+Problem: Some debian changelog files are not recognized.
+Solution: Add */debian/changelog. (Jason Franklin)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1780
+Problem: Statusline not updated when splitting windows.
+Solution: Call status_redraw_all(). (Jason Franklin, closes #5496)
+Files: src/window.c, src/testdir/test_statusline.vim
+
+Patch 8.2.1781
+Problem: Writing to prompt buffer interferes with insert mode.
+Solution: Use win_enter() instead of just setting "curwin". (Ben Jackson,
+ closes #7035)
+Files: src/autocmd.c, src/testdir/test_prompt_buffer.vim
+
+Patch 8.2.1782
+Problem: Vim9: cannot pass boolean to mapset().
+Solution: Use get_tv_bool(). (closes #7041)
+Files: src/map.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1783 (after 8.2.1781)
+Problem: Try-catch test fails.
+Solution: Don't call win_enter(), only call entering_window().
+Files: src/autocmd.c, src/window.c, src/proto/window.pro,
+ src/testdir/runtest.vim
+
+Patch 8.2.1784
+Problem: commits are not scanned for security problems
+Solution: Enable Github code scanning. (Christian Brabandt, closes #7057)
+Files: .github/workflows/codeql-analysis.yml
+
+Patch 8.2.1785
+Problem: Compiler warning for strcpy() out of bounds. (Christian Brabandt)
+Solution: use memmove() instead.
+Files: src/dict.c
+
+Patch 8.2.1786
+Problem: Various Normal mode commands not fully tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #7059)
+Files: src/testdir/test_normal.vim, src/testdir/test_regexp_utf8.vim,
+ src/testdir/test_registers.vim, src/testdir/test_spellfile.vim,
+ src/testdir/test_tagjump.vim, src/testdir/test_visual.vim
+
+Patch 8.2.1787
+Problem: Crash with 'incsearch' and very long line.
+Solution: Check whether regprog becomes NULL. (closes #7063)
+Files: src/search.c, src/testdir/test_search.vim
+
+Patch 8.2.1788
+Problem: Vim9: still allows :let for declarations.
+Solution: Make the default for v:disallow_let one. It can still be set to
+ zero to allow for using :let.
+Files: src/evalvars.c, src/testdir/runtest.vim
+
+Patch 8.2.1789
+Problem: Vim9: crash with invalid list constant. (Dhiraj Mishra)
+Solution: Return FAIL when compiling the list fails. (closes #7066)
+Files: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1790
+Problem: MS-Windows with Python: crash when executed from Vifm.
+Solution: Use NUL instead of CONIN. (Ken Takata, closes #7061, closes #7053)
+Files: src/if_python3.c
+
+Patch 8.2.1791
+Problem: Vim9: debugger test fails.
+Solution: Use "var" instead of "let".
+Files: src/testdir/test_debugger.vim
+
+Patch 8.2.1792
+Problem: Configure does not recognize Racket 6.1+.
+Solution: Add a check for "rktio". (closes #7062)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.1793
+Problem: Not consistently giving the "is a directory" warning.
+Solution: Adjust check for illegal file name and directory. (Yasuhiro
+ Matsumoto, closes #7067)
+Files: src/fileio.c, src/testdir/test_edit.vim
+
+Patch 8.2.1794
+Problem: No falsy Coalescing operator.
+Solution: Add the "??" operator. Fix mistake with function argument count.
+Files: runtime/doc/eval.txt, src/eval.c, src/vim9compile.c,
+ src/vim9type.c, src/testdir/test_expr.vim,
+ src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1795
+Problem: Vim9: operators && and || have a confusing result.
+Solution: Make the result a boolean.
+Files: runtime/doc/vim9.txt, src/eval.c, src/vim9compile.c,
+ src/vim9execute.c, src/vim9type.c, src/structs.h, src/vim9.h,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1796
+Problem: Vim9: invalid memory access with weird function name. (Dhiraj
+ Mishra)
+Solution: Check the name is valid. Add a test.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1797
+Problem: Vim9: some parts of the code not tested.
+Solution: Add a few tests.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1798
+Problem: Vim9: ternary operator condition is too permissive.
+Solution: Use tv_get_bool_chk().
+Files: runtime/doc/vim9.txt, src/eval.c, src/vim9compile.c,
+ src/vim9execute.c, src/testdir/vim9.vim,
+ src/testdir/test_expr.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1799
+Problem: Some Normal mode commands not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #7073)
+Files: src/testdir/test_gf.vim, src/testdir/test_goto.vim,
+ src/testdir/test_normal.vim, src/testdir/test_registers.vim,
+ src/testdir/test_startup.vim, src/testdir/test_tabpage.vim,
+ src/testdir/test_visual.vim
+
+Patch 8.2.1800
+Problem: Vim9: memory leak if "if" condition is invalid.
+Solution: Free ppconst earlier.
+Files: src/vim9compile.c
+
+Patch 8.2.1801
+Problem: Undo file not found when using ":args" or ":next".
+Solution: Handle like editing another file. (closes #7072)
+Files: src/ex_cmds.c, src/testdir/test_undo.vim
+
+Patch 8.2.1802
+Problem: Vim9: crash with unterminated dict. (Dhiraj Mishra)
+Solution: Return empty string instead of NULL. (closes #7084)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1803
+Problem: A few failures are not tested.
+Solution: Test a few failures. (Dominique Pellé, closes #7075)
+Files: src/testdir/test_arglist.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_json.vim, src/testdir/test_listdict.vim
+
+Patch 8.2.1804
+Problem: resolve('/') returns an empty string.
+Solution: Don't remove single slash. (closes #7074)
+Files: src/filepath.c, src/testdir/test_functions.vim
+
+Patch 8.2.1805
+Problem: Unix: terminal mode changed when using ":shell".
+Solution: Avoid calling settmode() when not needed. (issue #7079)
+Files: src/os_unix.c
+
+Patch 8.2.1806
+Problem: MS-Windows with Python: Vim freezes after import command.
+Solution: Use either "NUL" or "CONIN$" when reopening stdin. (Yasuhiro
+ Matsumoto, closes #7083)
+Files: src/if_python3.c
+
+Patch 8.2.1807
+Problem: Can use :help in a terminal popup window.
+Solution: Give an error. (closes #7088)
+Files: src/help.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1808
+Problem: No test coverage for ":spelldump!".
+Solution: Add a test. (Dominique Pellé, closes #7089)
+Files: src/testdir/test_spell.vim
+
+Patch 8.2.1809
+Problem: Mapping some keys with Ctrl does not work properly.
+Solution: For terminal, GTK and Motif handle "@", "^" and "_" codes.
+Files: src/misc2.c, src/proto/misc2.pro, src/term.c, src/gui_gtk_x11.c,
+ src/gui_x11.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.1810
+Problem: Some code in normal.c not covered by tests.
+Solution: Add normal mode tests. (Yegappan Lakshmanan, closes #7086)
+Files: src/testdir/test_charsearch.vim, src/testdir/test_normal.vim
+
+Patch 8.2.1811
+Problem: Mapping Ctrl-key does not work for '{', '}' and '|'.
+Solution: Remove the shift modifier. (closes #6457)
+Files: runtime/doc/map.txt, src/misc2.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.1812
+Problem: Vim9: nested closure throws an internal error.
+Solution: Do not skip a local variable with a partial. (closes #7065)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1813
+Problem: Vim9: can assign wrong type to script dict. (Christian J. Robinson)
+Solution: Check the type if known.
+Files: src/structs.h, src/eval.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/proto/evalvars.pro,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1814 (after 8.2.1813)
+Problem: Missing change to remove "static".
+Solution: Add the change.
+Files: src/evalvars.c
+
+Patch 8.2.1815
+Problem: Vim9: memory leak when using function reference.
+Solution: Temporarily disable the test.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1816
+Problem: Vim9: another memory leak when using function reference.
+Solution: Temporarily disable the tests.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1817
+Problem: Vim9: wrong instruction when reusing a local variable spot.
+Solution: Clear a newly allocated local variable. (closes #7080)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1818
+Problem: SE Linux: deprecation warning for security_context_t.
+Solution: Use "char *" instead. (James McCoy, closes #7093)
+Files: src/os_unix.c
+
+Patch 8.2.1819
+Problem: Vim9: Memory leak when using a closure.
+Solution: Compute the minimal refcount in the funcstack. Reenable disabled
+ tests.
+Files: src/vim9execute.c, src/proto/vim9execute.pro, src/structs.h,
+ src/eval.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1820
+Problem: Vim9: crash when error happens in timer callback.
+Solution: Check that current_exception is not NULL. (closes #7100)
+Files: src/ex_docmd.c
+
+Patch 8.2.1821
+Problem: Vim9: concatenating to a NULL list doesn't work.
+Solution: Handle a NULL list like an empty list. (closes #7064)
+Files: src/list.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1822 (after 8.2.1821)
+Problem: List test doesn't fail.
+Solution: Adjust the test for NULL list handling.
+Files: src/testdir/test_listdict.vim
+
+Patch 8.2.1823
+Problem: "gN" does not select the matched string.
+Solution: Move the cursor to the start of the match.
+Files: src/search.c, src/testdir/test_gn.vim
+
+Patch 8.2.1824
+Problem: Vim9: variables at the script level escape their scope.
+Solution: When leaving a scope remove variables declared in it.
+Files: src/structs.h, src/ex_eval.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1825
+Problem: Vim9: accessing freed memory.
+Solution: Clear sv_name when the variable is deleted.
+Files: src/ex_eval.c
+
+Patch 8.2.1826
+Problem: Vim9: cannot use a {} block at script level.
+Solution: Recognize a {} block.
+Files: src/ex_docmd.c, src/ex_cmds.h, src/ex_cmdidxs.h, src/ex_eval.c,
+ src/structs.h, src/proto/ex_eval.pro, src/errors.h,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1827
+Problem: Filetype detection does not test enough file names.
+Solution: Test more file names. (Adam Stankiewicz, closes #7099)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1828
+Problem: Build failure without the +eval feature.
+Solution: Add dummies for ex_block and ex_endblock.
+Files: src/ex_docmd.c
+
+Patch 8.2.1829
+Problem: Warnings when executing Github actions.
+Solution: Use another method to set environment variables. (Ken Takata,
+ closes #7107)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1830
+Problem: MS-Windows: Python3 issue with stdin.
+Solution: Check if stdin is readable. (Ken Takata, closes #7106)
+Files: src/if_python3.c
+
+Patch 8.2.1831
+Problem: File missing from distribution.
+Solution: Add the github code analyses file.
+Files: Filelist
+
+Patch 8.2.1832
+Problem: readdirex() error is displayed as a message. (Yegappan Lakshmanan)
+Solution: Use semsg() instead of smsg().
+Files: src/fileio.c, src/testdir/test_functions.vim
+
+Patch 8.2.1833
+Problem: When reading from stdin dup() is called twice.
+Solution: Remove the dup() in main.c. (Ken Takata, closes #7110)
+Files: src/main.c
+
+Patch 8.2.1834
+Problem: PyEval_InitThreads() is deprecated in Python 3.9.
+Solution: Do not call PyEval_InitThreads in Python 3.9 and later. (Ken
+ Takata, closes #7113) Avoid warnings for functions.
+Files: src/if_python3.c, src/if_py_both.h
+
+Patch 8.2.1835
+Problem: ":help ??" finds the "!!" tag.
+Solution: Do not translate "?" into ".". (Naruhiko Nishino, closes #7114,
+ closes #7115)
+Files: src/help.c, src/testdir/test_help_tagjump.vim
+
+Patch 8.2.1836
+Problem: Autocmd test fails on pacifist systems.
+Solution: Check that /bin/kill exists. (James McCoy, closes #7117)
+ Tune the timing, make the autocmd test run faster.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.1837
+Problem: Using "gn" after "gN" does not work.
+Solution: Extend the other end of the Visual area. (closes #7109)
+Files: src/search.c, src/testdir/test_gn.vim
+
+Patch 8.2.1838
+Problem: Vim9: cannot insert a comment line in an expression.
+Solution: Skip comment lines at the script level. (closes #7111)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1839
+Problem: Vim9: memory leaks reported in assign test.
+Solution: Move the failing job_start() call to separate test files, it
+ causes false leak reports.
+Files: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_fails.vim,
+ src/testdir/Make_all.mak
+
+Patch 8.2.1840
+Problem: Vim9: error message is not clear about compilation error.
+Solution: Say "compiling" instead of "processing".
+Files: src/vim9compile.c, src/message.c, src/globals.h,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1841
+Problem: Vim9: test for compilation error fails in normal build.
+Solution: Invoke CheckRunVimInTerminal in a separate function.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.1842
+Problem: Crash when USE_FNAME_CASE is defined and using :browse.
+Solution: Don't use read-only memory for ".". (Yegappan Lakshmanan,
+ closes #7123)
+Files: src/ex_cmds.c, src/ex_docmd.c, src/testdir/test_edit.vim
+
+Patch 8.2.1843
+Problem: Netbeans: with huge buffer number memory allocation may fail.
+Solution: Check for size overflow.
+Files: src/netbeans.c
+
+Patch 8.2.1844
+Problem: Using "q" at the more prompt doesn't stop a long message.
+Solution: Check for "got_int". (closes #7122)
+Files: src/message.c, src/testdir/test_messages.vim,
+ src/testdir/dumps/Test_quit_long_message.dump
+
+Patch 8.2.1845
+Problem: Vim9: function defined in a block can't use variables defined in
+ that block.
+Solution: First step: Make a second hashtab that holds all script variables,
+ also block-local ones, with more information.
+Files: src/structs.h, src/evalvars.c, src/ex_eval.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/scriptfile.c
+
+Patch 8.2.1846
+Problem: Vim9: variables declared in a local block are not found in
+ when a function is compiled.
+Solution: Look for script variables in sn_all_vars.
+Files: src/structs.h, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/userfunc.c, src/proto/userfunc.pro, src/ex_eval.c,
+ src/vim9script.c, src/proto/vim9script.pro, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1847
+Problem: Vim9: using negative value for unsigned type.
+Solution: Use zero instead of -1.
+Files: src/vim9compile.c
+
+Patch 8.2.1848
+Problem: Crash when passing a NULL string or list to popup_settext().
+Solution: Check for NULL pointers. (closes #7132)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1849
+Problem: Vim9: garbage collection frees block-local variables.
+Solution: Mark all script variables as used.
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1850
+Problem: "vat" does not select tags correctly over line break.
+Solution: Adjust the search pattern. (Aufar Gilbran, closes #7136)
+Files: src/textobject.c, src/testdir/test_textobjects.vim
+
+Patch 8.2.1851
+Problem: Vim9: "!" followed by space incorrectly used.
+Solution: Skip over trailing spaces. (closes #7131)
+Files: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1852
+Problem: map() returning zero for NULL list is unexpected.
+Solution: Return the empty list. (closes #7133)
+Files: src/list.c, src/testdir/test_filter_map.vim,
+ src/testdir/test_blob.vim
+
+Patch 8.2.1853
+Problem: "to_f" is recognized at "topleft" modifier.
+Solution: Do not recognize modifier when "_" follows. (closes #7019)
+Files: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1854
+Problem: Vim9: crash when throwing exception for NULL string. (Dhiraj
+ Mishra)
+Solution: Handle NULL string like empty string. (closes #7139)
+Files: src/vim9execute.c, src/errors.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1855
+Problem: Vim9: get error message when nothing is wrong.
+Solution: Check called_emsg instead of did_emsg. (closes #7143)
+Files: src/vim9compile.c, src/vim9execute.c, src/errors.h
+
+Patch 8.2.1856
+Problem: "2resize" uses size of current window. (Daniel Steinberg)
+Solution: Use size of resized window. (Yasuhiro Matsumoto, closes #7152)
+Files: src/ex_docmd.c, src/testdir/test_window_cmd.vim
+
+Patch 8.2.1857
+Problem: Vim9: using job_status() on an unused var gives an error.
+Solution: Return "fail". (closes #7158)
+Files: src/job.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1858
+Problem: Vim9: filter functions return number instead of bool.
+Solution: Return v:true instead of one. (closes #7144)
+Files: src/popupwin.c, src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1859
+Problem: Vim9: crash in unpack assignment.
+Solution: Make sure an error message is turned into an exception.
+ (closes #7159)
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1860
+Problem: Vim9: memory leak when throwing empty string.
+Solution: Free the empty string.
+Files: src/vim9execute.c
+
+Patch 8.2.1861
+Problem: Vim9: no specific error when parsing lambda fails.
+Solution: Also give syntax errors when not evaluating. (closes #7154)
+Files: src/dict.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1862
+Problem: vim9: memory leak when compiling lambda fails.
+Solution: Call clear_evalarg().
+Files: src/vim9compile.c
+
+Patch 8.2.1863
+Problem: Json code not sufficiently tested.
+Solution: Add more test cases. (Dominique Pellé, closes #7166)
+Files: src/testdir/test_json.vim
+
+Patch 8.2.1864
+Problem: Vim9: no error for wrong list type.
+Solution: Add flag to indicate a constant. (closes #7160)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1865
+Problem: Vim9: add() does not check type of argument.
+Solution: Inline the add() call. (closes #7160)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/errors.h,
+ src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1866
+Problem: Vim9: appending to pushed blob gives wrong result.
+Solution: Set ga_maxlen when copying a blob.
+Files: src/blob.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1867
+Problem: Vim9: argument to add() not checked for blob.
+Solution: Add the BLOBAPPEND instruction.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/errors.h,
+ src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1868
+Problem: Vim9: no error for missing space after comma in dict.
+Solution: Check for white space. (closes #6672)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1869
+Problem: Vim9: memory leak when using add().
+Solution: Free the added item.
+Files: src/vim9execute.c
+
+Patch 8.2.1870
+Problem: Vim9: no need to keep all script variables.
+Solution: Only keep script variables when a function was defined that could
+ use them. Fix freeing static string on exit.
+Files: src/vim9script.c, src/proto/vim9script.pro, src/structs.h,
+ src/ex_eval.c, src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.1871
+Problem: Using %v in 'errorformat' may fail before %Z.
+Solution: Set qf_viscol only when qf_col is set. (closes #7169)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.1872
+Problem: Matchfuzzy() does not prefer sequential matches.
+Solution: Give sequential matches a higher bonus. (Christian Brabandt,
+ closes #7140)
+Files: src/search.c, src/testdir/test_matchfuzzy.vim
+
+Patch 8.2.1873
+Problem: Vim9: missing white space when using <f-args>.
+Solution: Add spaces. (Christian J. Robinson)
+Files: src/usercmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1874
+Problem: Can't do something just before leaving Insert mode.
+Solution: Add the InsertLeavePre autocommand event. (closes #7177)
+Files: runtime/doc/autocmd.txt, src/edit.c, src/vim.h,
+ src/autocmd.c, src/testdir/test_edit.vim
+
+Patch 8.2.1875
+Problem: Warning when building GTK gui.
+Solution: Add missing function parameter.
+Files: src/gui_gtk_f.c
+
+Patch 8.2.1876
+Problem: Vim9: argument types for builtin functions are not checked at
+ compile time.
+Solution: Add an argument type checking mechanism. Implement type checks for
+ one function.
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/Make_all.mak
+
+Patch 8.2.1877 (after 8.2.1876)
+Problem: Test for function list fails.
+Solution: Move "obsolete" comments one line up.
+Files: src/evalfunc.c
+
+Patch 8.2.1878
+Problem: GTK: error for redefining function. (Tony Mechelynck)
+Solution: Remove "gtk_" prefix from local functions and prepend "gui_" to
+ global functions.
+Files: src/gui_gtk_f.c, src/gui_gtk_f.h, src/gui_gtk.c, src/gui_gtk_x11.c
+
+Patch 8.2.1879
+Problem: Vim9: argument types of insert() not checked when compiling.
+Solution: Add argument type checks for insert().
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.1880
+Problem: Vim9: Asan complains about adding zero to NULL.
+Solution: Check for argument count first.
+Files: src/vim9compile.c
+
+Patch 8.2.1881
+Problem: Cannot build with GTK3.
+Solution: Adjust form functions.
+Files: src/gui_gtk_f.c
+
+Patch 8.2.1882
+Problem: Vim9: v:disallow_let is no longer needed.
+Solution: Remove v:disallow_let.
+Files: src/evalvars.c, src/vim.h, src/vim9compile.c
+
+Patch 8.2.1883
+Problem: Compiler warnings when using Python.
+Solution: Adjust PyCFunction to also have the second argument. Use "int"
+ return type for some functions. Insert "(void *)" to get rid of
+ the remaining warnings.
+Files: src/if_py_both.h, src/if_python.c, src/if_python3.c
+
+Patch 8.2.1884
+Problem: Compiler warning for uninitialized variable. (John Marriott)
+Solution: Initialize with NULL.
+Files: src/vim9compile.c, src/evalfunc.c
+
+Patch 8.2.1885
+Problem: Filetype tests unnecessarily creates swap files.
+Solution: Disable 'swapfile'. (Ken Takata, closes #7183)
+Files: src/testdir/test_filetype.vim
+
+Patch 8.2.1886
+Problem: Using ":silent!" in a popup filter has unexpected effect.
+Solution: Use did_emsg instead of called_emsg. (closes #7178)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1887
+Problem: Github actions not optimally configured.
+Solution: Run CI on any pushed branches. Set fail-fast. (Ozaki Kiichi,
+ closes #7184)
+Files: .github/workflows/ci-windows.yaml
+
+Patch 8.2.1888
+Problem: Vim9: Getbufline(-1, 1, '$') gives an error.
+Solution: Return an empty list. (closes #7180)
+Files: src/evalbuffer.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.1889
+Problem: Vim9: erroneous error for missing white space after {}.
+Solution: Don't skip over white space after {}. (issue #7167)
+Files: src/dict.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1890
+Problem: Vim9: strange error for subtracting from a list.
+Solution: Check getting a number, not a string. (closes #7167)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1891
+Problem: Vim9: skipping over expression doesn't handle line breaks.
+Solution: Pass evalarg to skip_expr(). (closes #7157)
+Files: src/vim9compile.c, src/eval.c, src/proto/eval.pro, src/ex_docmd.c,
+ src/misc1.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1892
+Problem: Valgrind warns for using uninitialized access in tests.
+Solution: Fix condition for breaking out of loop. (Dominique Pellé,
+ closes #7187)
+Files: src/terminal.c
+
+Patch 8.2.1893
+Problem: Fuzzy matching does not support multiple words.
+Solution: Add support for matching white space separated words. (Yegappan
+ Lakshmanan, closes #7163)
+Files: runtime/doc/eval.txt, src/search.c,
+ src/testdir/test_matchfuzzy.vim
+
+Patch 8.2.1894
+Problem: Vim9: command modifiers are not supported.
+Solution: Support "silent" and "silent!".
+Files: src/structs.h, src/vim9compile.c, src/vim9.h, src/vim9execute.c,
+ src/evalvars.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1895 (after 8.2.1894)
+Problem: Vim9: silent command modifier test fails.
+Solution: Add missing changes.
+Files: src/ex_docmd.c
+
+Patch 8.2.1896
+Problem: Valgrind warns for using uninitialized memory.
+Solution: NUL terminate the SmcOpenConnection() error message. (Dominique
+ Pellé, closes #7194)
+Files: src/os_unix.c
+
+Patch 8.2.1897
+Problem: Command modifiers are saved and set inconsistently.
+Solution: Separate parsing and applying command modifiers. Save values in
+ cmdmod_T.
+Files: src/structs.h, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/ex_cmds.h, src/vim9compile.c
+
+Patch 8.2.1898
+Problem: Command modifier parsing always uses global cmdmod.
+Solution: Pass in cmdmod_T to use. Rename struct fields consistently.
+Files: src/structs.h, src/arglist.c, src/buffer.c, src/bufwrite.c,
+ src/diff.c, src/change.c, src/cmdhist.c, src/edit.c,
+ src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_getln.c,
+ src/fileio.c, src/filepath.c, src/gui.c, src/gui_gtk_x11.c,
+ src/help.c, src/if_cscope.c, src/indent.c, src/mark.c,
+ src/memline.c, src/message.c, src/option.c, src/ops.c,
+ src/os_unix.c, src/quickfix.c, src/register.c, src/scriptfile.c,
+ src/search.c, src/session.c, src/tag.c, src/terminal.c,
+ src/textformat.c, src/usercmd.c, src/vim9compile.c, src/window.c,
+ src/proto/ex_docmd.pro
+
+Patch 8.2.1899
+Problem: Crash in out-of-memory situation.
+Solution: Bail out if shell_name is NULL. (Dominique Pellé, closes #7196)
+Files: src/ex_cmds.c
+
+Patch 8.2.1900
+Problem: Vim9: command modifiers do not work.
+Solution: Make most command modifiers work.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/usercmd.c, src/proto/usercmd.pro, src/scriptfile.c,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1901
+Problem: Variable completion does not work in command line window.
+Solution: Use the "prevwin". (closes #7198)
+Files: src/evalvars.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.1902
+Problem: Default option values are changed when using :badd for an existing
+ buffer.
+Solution: When calling buflist_new() pass a zero line number. (closes #7195)
+Files: src/ex_cmds.c, src/testdir/test_buffer.vim
+
+Patch 8.2.1903 (after 8.2.1902)
+Problem: Buffer test fails with normal features.
+Solution: Use 'numberwidth' instead of 'conceallevel' in the test.
+Files: src/testdir/test_buffer.vim
+
+Patch 8.2.1904
+Problem: Still using default option values after using ":badd +1".
+Solution: Find a window where options were set. Don't set the window when
+ using ":badd".
+Files: src/buffer.c, src/ex_cmds.c, src/vim.h,
+ src/testdir/test_buffer.vim
+
+Patch 8.2.1905
+Problem: The wininfo list may contain stale entries.
+Solution: When closing a window remove any other entry where the window
+ pointer is NULL.
+Files: src/buffer.c, src/proto/buffer.pro, src/window.c
+
+Patch 8.2.1906
+Problem: Warning for signed/unsigned.
+Solution: Use size_t instead of int. (Mike Williams)
+Files: src/proto/usercmd.pro, src/usercmd.c, src/vim9execute.c
+
+Patch 8.2.1907
+Problem: Complete_info().selected may be wrong.
+Solution: Update cp_number if it was never set. (issue #6945)
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.1908
+Problem: Lua is initialized even when not used.
+Solution: Put lua_init() after check for "eap->skip". (Christian Brabandt,
+ closes #7191). Avoid compiler warnings.
+Files: src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.1909
+Problem: Number of status line items is limited to 80.
+Solution: Dynamically allocate the arrays. (Rom Grk, closes #7181)
+Files: runtime/doc/options.txt, src/buffer.c, src/optionstr.c,
+ src/proto/buffer.pro, src/screen.c, src/structs.h,
+ src/testdir/test_options.vim, src/testdir/test_statusline.vim,
+ src/vim.h
+
+Patch 8.2.1910
+Problem: Reading past the end of the command line.
+Solution: Check for NUL. (closes #7204)
+Files: src/ex_docmd.c, src/testdir/test_edit.vim
+
+Patch 8.2.1911
+Problem: Tiny build fails.
+Solution: Add #ifdef.
+Files: src/insexpand.c
+
+Patch 8.2.1912
+Problem: With Python 3.9 some tests fail.
+Solution: Take into account the different error message. (James McCoy,
+ closes #7210)
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.1913
+Problem: GTK GUI: rounding for the cell height is too strict.
+Solution: Round up above 15/16 of a pixel. (closes #7203)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.1914
+Problem: Vim9: cannot put line break in expression for '=' register.
+Solution: Pass fgetline to set_expr_line(). (closes #7209)
+Files: src/register.c, src/proto/register.pro, src/ex_docmd.c,
+ src/eval.c, src/proto/eval.pro, src/misc2.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.1915
+Problem: Vim9: error for wrong number of arguments is not useful.
+Solution: Mention whatever we have for the name. (closes #7208)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1916
+Problem: Vim9: function call is aborted even when "silent!" is used.
+Solution: Use did_emsg instead of called_emsg. (closes #7213)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1917
+Problem: No test for improved Man command.
+Solution: Test that shell arguments are properly escaped.
+Files: src/testdir/test_man.vim
+
+Patch 8.2.1918
+Problem: Vim9: E1100 mentions :let.
+Solution: Mention "var". (closes #7207)
+Files: src/vim9script.c, src/errors.h
+
+Patch 8.2.1919
+Problem: Assert_fails() setting emsg_silent changes normal execution.
+Solution: Use a separate flag in_assert_fails.
+Files: src/testing.c, src/globals.h, src/buffer.c, src/change.c,
+ src/fileio.c, src/insexpand.c, src/message.c, src/misc1.c,
+ src/normal.c, src/screen.c, src/term.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim, src/testdir/gen_opt_test.vim,
+ src/testdir/test_autocmd.vim, src/testdir/test_mapping.vim,
+ src/testdir/test_popup.vim, src/testdir/test_terminal.vim
+
+Patch 8.2.1920
+Problem: Listlbr test fails when run after another test.
+Solution: Add test separately to list of test targets.
+Files: src/testdir/Make_all.mak, src/testdir/test_alot_utf8.vim
+
+Patch 8.2.1921
+Problem: Fuzzy matching does not recognize path separators.
+Solution: Add a bonus for slash and backslash. (Yegappan Lakshmanan,
+ closes #7225)
+Files: src/search.c, src/testdir/test_matchfuzzy.vim
+
+Patch 8.2.1922
+Problem: Win32: scrolling doesn't work properly when part of window is
+ off-screen.
+Solution: Fall back to GDI scrolling if part of the window is off-screen.
+ Handle multi-monitor setup better. (Ken Takata, closes #7219)
+Files: src/gui_w32.c
+
+Patch 8.2.1923
+Problem: Vim9: "filter" command modifier doesn't work.
+Solution: Check for space on char before argument. (closes #7216,
+ closes #7222)
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1924
+Problem: Vim9: crash when indexing dict with NULL key.
+Solution: Use empty string instead of NULL. (closes #7229) Make error
+ message more useful for empty string.
+Files: src/vim9execute.c, src/globals.h, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1925 (after 8.2.1924)
+Problem: List/dict test fails.
+Solution: Correct expected exception.
+File: src/testdir/test_listdict.vim
+
+Patch 8.2.1926
+Problem: Cannot use a space in 'spellfile'. (Filipe Brandenburger)
+Solution: Permit using a space. (closes #7230)
+Files: src/spell.c, src/testdir/gen_opt_test.vim
+
+Patch 8.2.1927
+Problem: Vim9: get unknown error with an error in a timer function.
+Solution: Use did_emsg instead of called_emsg. (closes #7231)
+Files: src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.1928
+Problem: Vim9: "silent!" not effective when list index is wrong.
+Solution: Ignore list index failure when emsg_silent is set. (closes #7232)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.1929
+Problem: MS-Windows: problem loading Perl 5.32.
+Solution: Define NO_THREAD_SAFE_LOCALE. (Ken Takata, closes #7234)
+Files: src/if_perl.xs
+
+Patch 8.2.1930
+Problem: Wrong input if removing shift results in special key code.
+Solution: Handle special key codes. (closes #7189)
+Files: src/term.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.1931
+Problem: Vim9: arguments of extend() not checked at compile time.
+Solution: Add argument type checking for extend().
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.1932
+Problem: Compiler warnings when building with Athena GUI.
+Solution: Fix function signatures.
+Files: src/gui_at_fs.c
+
+Patch 8.2.1933
+Problem: Cannot sort using locale ordering.
+Solution: Add a flag for :sort and sort() to use the locale. (Dominique
+ Pellé, closes #7237)
+Files: runtime/doc/change.txt, runtime/doc/eval.txt, src/ex_cmds.c,
+ src/list.c, src/testdir/test_sort.vim
+
+Patch 8.2.1934
+Problem: Vim9: command modifiers in :def function not tested.
+Solution: Add tests. Fix using modifier before filter command.
+Files: src/ex_docmd.c, src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1935 (after 8.2.1933)
+Problem: Sort test fails on Mac.
+Solution: Disable the sort test with locale on Mac.
+Files: src/testdir/test_sort.vim
+
+Patch 8.2.1936
+Problem: Session sets the local 'scrolloff' value to the global value.
+Solution: Do not let restoring the global option value change the local
+ value.
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.1937
+Problem: Vim9: test for confirm modifier fails in some situations.
+Solution: Add a short wait. Handle failure better.
+Files: src/testdir/term_util.vim, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1938
+Problem: Wiping out a terminal buffer makes some tests fail.
+Solution: Do not wipe out the terminal buffer unless wanted.
+Files: src/testdir/term_util.vim, src/testdir/test_terminal.vim,
+ src/testdir/test_terminal3.vim
+
+Patch 8.2.1939
+Problem: Invalid memory access in Ex mode with global command.
+Solution: Make sure the cursor is on a valid line. (closes #7238)
+Files: src/move.c, src/testdir/test_ex_mode.vim
+
+Patch 8.2.1940
+Problem: Vim9: browse modifier test fails on Mac.
+Solution: Only test when the +browse feature is available.
+Files: src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1941
+Problem: Ex mode test fails on MS-Windows with GUI.
+Solution: Skip the test when using gvim.
+Files: src/testdir/test_ex_mode.vim
+
+Patch 8.2.1942
+Problem: Insufficient test coverage for the Netbeans interface.
+Solution: Add more tests. Fix an uncovered bug. (Yegappan Lakshmanan,
+ closes #7240)
+Files: runtime/doc/netbeans.txt, src/mouse.c,
+ src/testdir/test_netbeans.py, src/testdir/test_netbeans.vim,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.1943
+Problem: Vim9: wrong error message when colon is missing.
+Solution: Check for a missing colon. (issue #7239)
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1944
+Problem: Netbeans test is flaky.
+Solution: Add a short delay. (Yegappan Lakshmanan, closes #7246)
+Files: src/testdir/test_netbeans.vim
+
+Patch 8.2.1945
+Problem: Crash when passing NULL function to reduce().
+Solution: Check for NULL pointer and give an error. (Dominique Pellé,
+ closes #7243)
+Files: src/list.c, src/errors.h, src/testdir/test_listdict.vim
+
+Patch 8.2.1946
+Problem: sort() with NULL string not tested.
+Solution: Add a test. use v:collate. (Dominique Pellé, closes #7247)
+Files: src/testdir/test_sort.vim
+
+Patch 8.2.1947
+Problem: Crash when using "zj" without folds. (Sean Dewar)
+Solution: Check for at least one fold. (closes #7245)
+Files: src/fold.c, src/testdir/test_fold.vim
+
+Patch 8.2.1948
+Problem: GUI: crash when handling message while closing a window. (Srinath
+ Avadhanula)
+Solution: Don't handle message while closing a window. (closes #7250)
+Files: src/window.c, src/globals.h, src/getchar.c
+
+Patch 8.2.1949
+Problem: Vim9: using extend() on null dict is silently ignored.
+Solution: Give an error message. Initialize a dict variable with an empty
+ dictionary. (closes #7251)
+Files: src/errors.h, src/list.c, src/evalvars.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.1950
+Problem: Vim9: crash when compiling function fails when getting type.
+Solution: Handle NULL type. (closes #7253)
+Files: src/vim9type.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1951 (after 8.2.1949)
+Problem: Test for list and dict fails.
+Solution: Adjust for using an empty list/dict for a null one.
+Files: src/testdir/test_listdict.vim, src/testdir/test_python2.vim,
+ src/testdir/test_python3.vim
+
+Patch 8.2.1952
+Problem: Vim9: crash when using a NULL dict key.
+Solution: Use a NULL dict key like an empty string. (closes #7249)
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1953
+Problem: Vim9: extra "unknown" error after other error.
+Solution: Restore did_emsg count after EXEC instruction. (closes #7254)
+ Improve error message from assert_fails()
+Files: src/vim9execute.c, src/testing.c,
+ src/testdir/test_vim9_script.vim, src/testdir/test_assert.vim
+
+Patch 8.2.1954
+Problem: Vim9: not all command modifiers are tested.
+Solution: Add tests for "keep" modifiers. Fix that marks are lost even
+ though ":lockmarks" is used.
+Files: src/ex_cmds.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1955
+Problem: Vim9: not all command modifiers are tested.
+Solution: Add tests for remaining modifiers.
+Files: src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.1956
+Problem: Vim9: cannot specify argument types for lambda.
+Solution: Allow adding argument types. Check arguments when calling a
+ function reference.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/vim9compile.c,
+ src/eval.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.1957
+Problem: Diff and cursorcolumn highlighting don't mix.
+Solution: Fix condition for what attribute to use. (Christian Brabandt,
+ closes #7258, closes #7260)
+Files: src/drawline.c, src/testdir/dumps/Test_diff_cuc_01.dump,
+ src/testdir/dumps/Test_diff_cuc_02.dump,
+ src/testdir/dumps/Test_diff_cuc_03.dump,
+ src/testdir/dumps/Test_diff_cuc_04.dump,
+ src/testdir/test_diffmode.vim
+
+Patch 8.2.1958 (after 8.2.1956)
+Problem: Build failure with timers.
+Solution: Add missing change.
+Files: src/popupwin.c
+
+Patch 8.2.1959
+Problem: Crash when terminal buffer name is made empty. (Dhiraj Mishra)
+Solution: Fall back to "[No Name]". (closes #7262)
+Files: src/buffer.c, src/proto/buffer.pro, src/terminal.c,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.1960
+Problem: Warning for uninitialized variable.
+Solution: Initialize the variable.
+Files: src/evalfunc.c
+
+Patch 8.2.1961
+Problem: Various comments can be improved.
+Solution: Various comment adjustments.
+Files: src/dict.c, src/structs.h, src/time.c, src/testdir/shared.vim,
+ src/testdir/test_netbeans.vim, src/gui_motif.c
+
+Patch 8.2.1962
+Problem: Netbeans may access freed memory.
+Solution: Check the buffer pointer is still valid. Add a test. (Yegappan
+ Lakshmanan, closes #7248)
+Files: src/netbeans.c, src/testdir/test_netbeans.vim
+
+Patch 8.2.1963
+Problem: Crash when using a popup window with "latin1" encoding.
+Solution: Don't use ScreenLinesUC when enc_utf8 is false. (closes #7241)
+Files: src/screen.c, src/terminal.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1964
+Problem: Not all ConTeXt files are recognized.
+Solution: Add two patterns. (closes #7263)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.1965
+Problem: Vim9: tests fail without the channel feature.
+Solution: Check if the channel feature is present. (Dominique Pellé,
+ closes #7270)
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1966
+Problem: Popup becomes current window after closing a terminal window.
+Solution: When restoring the window after executing autocommands, check that
+ the window ID is still the same. (Naruhiko Nishino,
+ closes #7272)
+Files: src/autocmd.c, src/window.c, src/proto/window.pro, src/structs.h,
+ src/testdir/test_popupwin.vim
+
+Patch 8.2.1967
+Problem: The session file does not restore the alternate file.
+Solution: Add ":balt". Works like ":badd" and also sets the buffer as the
+ alternate file. Use it in the session file. (closes #7269,
+ closes #6714)
+Files: runtime/doc/windows.txt, src/ex_cmds.h, src/ex_cmdidxs.h,
+ src/ex_docmd.c, src/vim.h, src/ex_cmds.c, src/session.c,
+ src/testdir/test_buffer.vim
+
+Patch 8.2.1968
+Problem: Vim9: has() assumes a feature does not change dynamically.
+Solution: Check whether a feature may change dynamically. (closes #7265)
+Files: src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.1969
+Problem: Vim9: map() may change the list or dict item type.
+Solution: Add mapnew().
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/list.c, src/proto/list.pro, src/testdir/test_filter_map.vim
+
+Patch 8.2.1970
+Problem: It is easy to make mistakes when cleaning up swap files after the
+ system crashed.
+Solution: Warn for the process still running after recovery. Do not
+ automatically delete a swap file created on another system.
+ (David Fries, closes #7273)
+Files: src/memline.c, src/testdir/test_swap.vim
+
+Patch 8.2.1971
+Problem: Memory leak when map() fails.
+Solution: Clear the typval.
+Files: src/list.c
+
+Patch 8.2.1972
+Problem: Crash when recreating nested fold.
+Solution: Check for empty growarray. (closes #7278)
+Files: src/fold.c, src/testdir/test_fold.vim
+
+Patch 8.2.1973
+Problem: Finding a patch number can be a bit slow.
+Solution: Use binary search. (closes #7279)
+Files: src/version.c
+
+Patch 8.2.1974
+Problem: Vim9: test for has('gui_running') fails with VIMDLL.
+Solution: Adjust the #ifdef. (Ken Takata, closes #7276)
+Files: src/evalfunc.c
+
+Patch 8.2.1975
+Problem: Win32: memory leak when encoding conversion fails.
+Solution: Free the allocated memory. (Ken Takata, closes #7277)
+Files: src/os_win32.c
+
+Patch 8.2.1976
+Problem: Cannot backspace in prompt buffer after using cursor-left. (Maxim
+ Kim)
+Solution: Ignore "arrow_used" in a prompt buffer. (closes #7281)
+Files: src/edit.c, src/testdir/test_prompt_buffer.vim
+
+Patch 8.2.1977
+Problem: Vim9: error for using a string in a condition is confusing.
+Solution: Give a more specific error. Also adjust the compile time type
+ checking for || and &&.
+Files: src/vim9compile.c, src/vim9execute.c, src/proto/vim9execute.pro,
+ src/typval.c, src/errors.h, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1978
+Problem: Making a mapping work in all modes is complicated.
+Solution: Add the <Cmd> special key. (Yegappan Lakshmanan, closes #7282,
+ closes 4784, based on patch by Bjorn Linse)
+Files: runtime/doc/autocmd.txt, runtime/doc/eval.txt,
+ runtime/doc/map.txt, src/edit.c, src/errors.h, src/ex_docmd.c,
+ src/ex_getln.c, src/getchar.c, src/insexpand.c, src/keymap.h,
+ src/map.c, src/misc2.c, src/normal.c, src/ops.c,
+ src/proto/getchar.pro, src/screen.c, src/terminal.c,
+ src/testdir/test_mapping.vim
+
+Patch 8.2.1979
+Problem: "term_opencmd" option of term_start() is truncated. (Sergey
+ Vlasov)
+Solution: Allocate the buffer to hold the command. (closes #7284)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.1980
+Problem: Vim9: some tests are not done at the script level.
+Solution: Use CheckDefAndScriptSuccess() in more places. Fix uncovered
+ problems.
+Files: src/eval.c, src/list.c, src/scriptfile.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1981
+Problem: MinGW: parallel compilation might fail.
+Solution: Add dependencies on $(OUTDIR). (Masamichi Abe, closes #7287)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.1982
+Problem: Quickfix window not updated when adding invalid entries.
+Solution: Update the quickfix buffer properly. (Yegappan Lakshmanan, closes
+ #7291, closes #7271)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.1983
+Problem: ml_get error when using <Cmd> to open a terminal.
+Solution: If the window changed reset the incsearch state. (closes #7289)
+Files: src/ex_getln.c, src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_from_cmd.dump
+
+Patch 8.2.1984
+Problem: Cannot use :vimgrep in omni completion, causing C completion to
+ fail.
+Solution: Add the EX_LOCK_OK flag to :vimgrep. (closes #7292)
+Files: src/ex_cmds.h, src/testdir/test_quickfix.vim
+
+Patch 8.2.1985
+Problem: Crash when closing terminal popup with <Cmd> mapping.
+Solution: Check b_term is not NULL. (closes #7294)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.1986
+Problem: Expression test is flaky on Appveyor.
+Solution: Temporarily disable the test in MS-Windows.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.1987
+Problem: MS-Windows: Win32.mak is no longer needed.
+Solution: Do not include Win32.mak. (Jason McHugh, closes #7290)
+Files: src/Make_mvc.mak, src/INSTALLpc.txt
+
+Patch 8.2.1988
+Problem: Still in Insert mode when opening terminal popup with a <Cmd>
+ mapping in Insert mode.
+Solution: Exit Insert mode. (closes #7295)
+Files: src/edit.c, src/testdir/test_terminal.vim
+
+Patch 8.2.1989
+Problem: Info popup triggers WinEnter and WinLeave autocommands.
+Solution: Suppress autocommands for the info popup. (closes #7296)
+Files: src/popupmenu.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.1990
+Problem: Cursor position wrong in terminal popup with finished job.
+Solution: Only add the top and left offset when not done already.
+ (closes #7298)
+Files: src/popupwin.c, src/structs.h, src/drawline.c, src/move.c,
+ src/terminal.c, src/testdir/dumps/Test_terminal_popup_m1.dump
+
+Patch 8.2.1991
+Problem: Coverity warns for not using the ga_grow() return value.
+Solution: Bail out if ga_grow() fails. (Yegappan Lakshmanan, closes #7303)
+Files: src/getchar.c
+
+Patch 8.2.1992
+Problem: Build fails with small features.
+Solution: Add #ifdef.
+Files: src/move.c
+
+Patch 8.2.1993
+Problem: Occasional failure of the netbeans test.
+Solution: Add "silent!". (Yegappan Lakshmanan, closes #7304)
+Files: src/testdir/test_netbeans.vim
+
+Patch 8.2.1994 (after 8.2.1981)
+Problem: MS-Windows: MinGW always does a full build.
+Solution: Only check if $OUTDIR exists. (Masamichi Abe, closes #7311)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.1995
+Problem: The popup menu can cause too much redrawing.
+Solution: Reduce the length of the displayed text. (Yasuhiro Matsumoto,
+ closes #7306)
+Files: src/popupmenu.c
+
+Patch 8.2.1996
+Problem: Vim9: invalid error for argument of extend().
+Solution: Check if the type could match. (closes #7299)
+Files: src/evalfunc.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/vim9type.c, src/proto/vim9type.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.1997
+Problem: Window changes when using bufload() while in a terminal popup.
+Solution: When searching for a window by ID also find a popup window.
+ (closes #7307)
+Files: src/window.c, src/testdir/test_terminal.vim
+
+Patch 8.2.1998
+Problem: Terminal Cmd test sometimes fails to close popup.
+Solution: Add "term_finish" option.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.1999
+Problem: Terminal popup test sometimes fails.
+Solution: Wait for the popup to close.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.2000
+Problem: Vim9: dict.key assignment not implemented yet.
+Solution: Implement dict.key assignment. (closes #7312)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2001
+Problem: Vim9: :def function does not apply 'maxfuncdepth'.
+Solution: Use 'maxfuncdepth'. (issue #7313)
+Files: src/vim9execute.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2002
+Problem: Vim9: lambda argument shadowed by function name.
+Solution: Let function name be shadowed by lambda argument. (closes #7313)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2003
+Problem: Build error with +conceal but without +popupwin.
+Solution: Add #ifdef. (Tom Ryder, closes #7316)
+Files: src/drawline.c
+
+Patch 8.2.2004 (after 8.2.2002)
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize "ufunc". (John Marriott)
+Files: src/vim9compile.c
+
+Patch 8.2.2005
+Problem: Redoing a mapping with <Cmd> doesn't work properly.
+Solution: Fill the redo buffer. Use "<SNR>" instead of a key code.
+ (closes #7282)
+Files: src/ops.c, src/getchar.c, src/testdir/test_mapping.vim
+
+Patch 8.2.2006
+Problem: .pbtxt files are not recognized.
+Solution: Recognize .pbtxt as protobuf text buffers. (closes #7326)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2007
+Problem: Test for insert mode in popup is not reliable.
+Solution: Wait for the popup to disappear. (Ozaki Kiichi, closes #7321)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.2008
+Problem: MS-Windows GUI: handling channel messages lags.
+Solution: Reduce the wait time from 100 to 10 msec. (closes #7097)
+Files: src/gui_w32.c
+
+Patch 8.2.2009
+Problem: MS-Windows: setting $LANG in gvimext only causes problems.
+Solution: Do not set $LANG. (Ken Takata, closes #7325)
+Files: src/GvimExt/gvimext.cpp
+
+Patch 8.2.2010
+Problem: Vim9: compiling fails for unreachable return statement.
+Solution: Fix it. (closes #7319)
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2011
+Problem: "syn sync" reports a very large number.
+Solution: Use "at the first line".
+Files: src/syntax.c, src/testdir/test_syntax.vim
+
+Patch 8.2.2012
+Problem: Vim9: confusing error message when using bool wrongly.
+Solution: Mention "Bool" instead of "Special". (closes #7323)
+Files: src/typval.c, src/errors.h, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2013
+Problem: Vim9: not skipping white space after unary minus.
+Solution: Skip whitespace. (closes #7324)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2014
+Problem: Using CTRL-O in a prompt buffer moves cursor to start of the line.
+Solution: Do not move the cursor when restarting edit. (closes #7330)
+Files: src/job.c, src/testdir/test_prompt_buffer.vim
+
+Patch 8.2.2015
+Problem: Vim9: literal dict #{} is not like any other language.
+Solution: Support the JavaScript syntax.
+Files: runtime/doc/vim9.txt, src/vim9compile.c,
+ src/proto/vim9compile.pro, src/errors.h,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2016
+Problem: Swap file test is a little flaky.
+Solution: Don't set a byte to a fixed value, increment it.
+Files: src/testdir/test_swap.vim
+
+Patch 8.2.2017 (after 8.2.2015)
+Problem: Missing part of the dict change.
+Solution: Also change the script level dict.
+Files: src/dict.c
+
+Patch 8.2.2018
+Problem: Vim9: script variable not found from lambda.
+Solution: In a lambda also check the script hashtab for a variable without a
+ scope. (closes #7329)
+Files: src/evalvars.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2019 (after 8.2.2016)
+Problem: Swap file test fails on MS-Windows.
+Solution: Add four to the process ID. (Ken Takata, closes #7333)
+Files: src/testdir/test_swap.vim
+
+Patch 8.2.2020
+Problem: Some compilers do not like the "namespace" argument.
+Solution: Rename to "use_namespace". (closes #7332)
+Files: src/vim9compile.c, src/proto/vim9compile.pro
+
+Patch 8.2.2021
+Problem: Vim9: get E1099 when autocommand resets did_emsg.
+Solution: Add did_emsg_cumul. (closes #7336)
+Files: src/globals.h, src/ex_docmd.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2022
+Problem: Vim9: star command recognized erroneously.
+Solution: Give an error for missing colon. (issue #7335)
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2023
+Problem: Vim: memory leak when :execute fails.
+Solution: Clear the growarray.
+Files: src/vim9execute.c
+
+Patch 8.2.2024
+Problem: Flicker when redrawing a popup with a title and border.
+Solution: Do not redraw the border where the title is displayed. (Naruhiko
+ Nishino, closes #7334)
+Files: src/popupwin.c
+
+Patch 8.2.2025
+Problem: Amiga: Not all colors are used on OS4.
+Solution: Adjust the #ifdef to include __amigaos4__. (Ola Söder,
+ closes #7328)
+Files: src/term.c
+
+Patch 8.2.2026
+Problem: Coverity warns for possibly using not NUL terminated string.
+Solution: Put a NUL in b0_hname just in case.
+Files: src/memline.c
+
+Patch 8.2.2027
+Problem: Coverity warns for uninitialized field.
+Solution: Set "v_lock".
+Files: src/list.c
+
+Patch 8.2.2028
+Problem: Coverity warns for using an uninitialized variable.
+Solution: Initialize to NULL.
+Files: src/eval.c
+
+Patch 8.2.2029
+Problem: Coverity warns for not checking return value.
+Solution: Check that u_save_cursor() returns OK.
+Files: src/ops.c
+
+Patch 8.2.2030
+Problem: Some tests fail on Mac.
+Solution: Avoid Mac test failures. Add additional test for wildmenu.
+ (Yegappan Lakshmanan, closes #7341)
+Files: src/testdir/runtest.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_options.vim, src/testdir/test_popupwin.vim
+
+Patch 8.2.2031
+Problem: Some tests fail when run under valgrind.
+Solution: Avoid timing problems.
+Files: src/testdir/test_vim9_func.vim, src/testdir/test_channel.vim,
+ src/testdir/test_clientserver.vim, src/testdir/test_debugger.vim,
+ src/testdir/test_quotestar.vim
+
+Patch 8.2.2032
+Problem: Cabalconfig and cabalproject filetypes not recognized.
+Solution: Detect more cabal files. (Marcin Szamotulski, closes #7339)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2033
+Problem: Vim9: :def without argument gives compilation error.
+Solution: Add the DEF instruction. (closes #7344)
+Files: src/ex_docmd.c, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2034
+Problem: Vim9: list unpack in for statement not compiled yet.
+Solution: Compile list unpack. (closes #7345)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/errors.h,
+ src/eval.c, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2035
+Problem: MS-Windows: some tests may fail.
+Solution: Avoid test failures. (Yegappan Lakshmanan, closes #7346)
+Files: src/testdir/test_channel.vim, src/testdir/test_ex_mode.vim,
+ src/testdir/test_functions.vim
+
+Patch 8.2.2036
+Problem: Current buffer is messed up if creating a new buffer for the
+ quickfix window fails.
+Solution: Check that creating the buffer succeeds. (closes #7352)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim,
+ src/testdir/dumps/Test_quickfix_window_fails.dump
+
+Patch 8.2.2037
+Problem: Compiler test depends on list of compiler plugins.
+Solution: Compare with the actual list of compiler plugins.
+Files: src/testdir/test_compiler.vim
+
+Patch 8.2.2038
+Problem: Compiler test fails on MS-Windows.
+Solution: Sort the found compiler plugin names.
+Files: src/testdir/test_compiler.vim
+
+Patch 8.2.2039
+Problem: Viminfo is not written when creating a new file.
+Solution: Set "b_marks_read" in the new buffer. (Christian Brabandt,
+ closes #7350)
+Files: src/bufwrite.c, src/testdir/test_viminfo.vim
+
+Patch 8.2.2040
+Problem: Terminal buffer disappears even when 'bufhidden' is "hide".
+ (Sergey Vlasov)
+Solution: Check 'bufhidden' when a terminal buffer becomes hidden.
+ (closes #7358)
+Files: src/buffer.c, src/testdir/test_terminal.vim
+
+Patch 8.2.2041
+Problem: Haskell filetype not optimally recognized.
+Solution: Recognize all *.hsc files as Haskell. (Marcin Szamotulski,
+ closes #7354)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2042
+Problem: Build failure with +profile but without +reltime.
+Solution: Adjust #ifdef. (Christian Brabandt, closes #7361)
+Files: src/syntax.c
+
+Patch 8.2.2043
+Problem: GTK3: white border around text stands out.
+Solution: Use current theme color. (closes #7357, issue #349)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.2044
+Problem: MS-Windows: swap file test sometimes fails.
+Solution: Use a more reliable way to change the process ID. When "timeout"
+ fails use "ping" to wait up to ten minutes. (Ken Takata,
+ closes #7365)
+Files: .github/workflows/ci-windows.yaml, src/testdir/test_swap.vim
+
+Patch 8.2.2045
+Problem: Highlighting a character too much with incsearch.
+Solution: Check "search_match_endcol". (Christian Brabandt, closes #7360)
+Files: src/drawline.c, src/testdir/test_search.vim,
+ src/testdir/dumps/Test_incsearch_newline1.dump,
+ src/testdir/dumps/Test_incsearch_newline2.dump,
+ src/testdir/dumps/Test_incsearch_newline3.dump,
+ src/testdir/dumps/Test_incsearch_newline4.dump,
+ src/testdir/dumps/Test_incsearch_newline5.dump
+
+Patch 8.2.2046
+Problem: Some test failures don't give a clear error.
+Solution: Use assert_match() and assert_fails() instead of assert_true().
+ (Ken Takata, closes #7368)
+Files: src/testdir/test_autocmd.vim, src/testdir/test_backspace_opt.vim
+
+Patch 8.2.2047
+Problem: Amiga: FEAT_ARP defined when it should not.
+Solution: Adjust #ifdef. (Ola Söder, closes #7370)
+Files: src/feature.h
+
+Patch 8.2.2048
+Problem: Amiga: obsolete code.
+Solution: Remove the unused lines. (Ola Söder, closes #7373)
+Files: src/gui.c
+
+Patch 8.2.2049
+Problem: Amiga: obsolete function.
+Solution: Remove the function. (Ola Söder, closes #7374)
+Files: src/memfile.c
+
+Patch 8.2.2050
+Problem: Search test contains unneeded sleeps.
+Solution: Rename the function, remove sleeps. (Christian Brabandt,
+ closes #7369)
+Files: src/testdir/test_search.vim
+
+Patch 8.2.2051
+Problem: Vim9: crash when aborting a user function call.
+Solution: Do not use the return value when aborting. (closes #7372)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2052
+Problem: Vim9: "edit +4 fname" gives an error. (Naruhiko Nishino)
+Solution: Allow using a range in the +cmd argument. (closes #7364)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/vim.h, src/ex_cmds.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2053
+Problem: Vim9: lambda doesn't accept argument types.
+Solution: Optionally accept argument types at the script level.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2054
+Problem: Amiga: FEAT_ARP defined when it should not.
+Solution: Adjust "||" to "&&" in #ifdef. (Ola Söder, closes #7375)
+Files: src/feature.h
+
+Patch 8.2.2055
+Problem: MS-Windows: two Vim instances may use the same temp file.
+Solution: Use the process ID for the temp name. (Ken Takata, closes #7378)
+Files: src/fileio.c
+
+Patch 8.2.2056
+Problem: Configure fails when building with the
+ "implicit-function-declaration" error enabled, specifically on Mac.
+Solution: Declare the functions like in the source code. (suggestion by
+ Clemens Lang, closes #7380)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2057
+Problem: Getting the selection may trigger TextYankPost autocmd.
+Solution: Only trigger the autocommand when yanking in Vim, not for getting
+ the selection. (closes #7367)
+Files: src/clipboard.c, src/normal.c, src/register.c,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.2058
+Problem: Using mkview/loadview changes the jumplist.
+Solution: Use ":keepjumps". Don't let ":badd" or ":balt" change the
+ jumplist. (closes #7371)
+Files: src/session.c, src/ex_docmd.c, src/testdir/test_mksession.vim
+
+Patch 8.2.2059
+Problem: Amiga: can't find plugins.
+Solution: Do not use "**" in the pattern. (Ola Söder, closes #7384)
+Files: src/main.c
+
+Patch 8.2.2060
+Problem: Check for features implemented with "if".
+Solution: Use the Check commands. (Ken Takata, closes #7383)
+Files: src/testdir/test_autocmd.vim, src/testdir/test_compiler.vim,
+ src/testdir/test_delete.vim, src/testdir/test_diffmode.vim,
+ src/testdir/test_expr.vim, src/testdir/test_fold.vim
+
+Patch 8.2.2061
+Problem: Vim9: E1030 error when using empty string for term_sendkeys().
+Solution: Don't check for an invalid type unless the terminal can't be
+ found. (closes #7382)
+Files: src/terminal.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.2062
+Problem: <Cmd> does not handle CTRL-V.
+Solution: Call get_literal() after encountering CTRL-V. (closes #7387)
+Files: src/getchar.c, src/testdir/test_mapping.vim
+
+Patch 8.2.2063
+Problem: Vim9: only one level of indexing supported.
+Solution: Handle more than one index in an assignment.
+Files: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2064
+Problem: terminal: cursor is on while redrawing, causing flicker.
+Solution: Switch the cursor off while redrawing. Always add the top and
+ left offset to the cursor position when not done already.
+ (closes #5943)
+Files: src/terminal.c, src/popupwin.c
+
+Patch 8.2.2065
+Problem: Using map() and filter() on a range() is inefficient.
+Solution: Do not materialize the range. (closes #7388)
+Files: src/list.c, src/testdir/test_functions.vim
+
+Patch 8.2.2066
+Problem: Vim9: assignment with += doesn't work.
+Solution: Do not see the "+" as an addition operator.
+Files: src/eval.c, src/ex_docmd.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2067 (after 8.2.2064)
+Problem: Cursor position in popup terminal is wrong.
+Solution: Don't check the flags.
+Files: src/terminal.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.2068
+Problem: Transparent syntax item uses start/end of containing region.
+Solution: Do not change the startpos and endpos of a transparent region to
+ that of its containing region. (Adrian Ghizaru, closes #7349,
+ closes #7391)
+Files: src/syntax.c, src/testdir/test_syntax.vim
+
+Patch 8.2.2069
+Problem: The quickfix window is not updated after setqflist().
+Solution: Update the quickfix buffer. (Yegappan Lakshmanan, closes #7390,
+ closes #7385)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.2070
+Problem: Can't get the exit value in VimLeave or VimLeavePre autocommands.
+Solution: Add v:exiting like in Neovim. (Yegappan Lakshmanan, closes #7395)
+Files: runtime/doc/autocmd.txt, runtime/doc/eval.txt, src/evalvars.c,
+ src/main.c, src/testdir/test_exit.vim, src/vim.h
+
+Patch 8.2.2071
+Problem: Vim9: list assign doesn't accept an empty remainder list.
+Solution: Recognize list assignment with ";".
+Files: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2072
+Problem: Vim9: list assign not well tested.
+Solution: Test with different destinations. Fix white space error.
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2073
+Problem: Vim9: for with unpack only works for local variables.
+Solution: Recognize different destinations.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2074
+Problem: Vim9: using :normal from Vim9 script can't handle range.
+Solution: Execute a :normal command in legacy script context. (closes #7401)
+Files: src/structs.h, src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2075
+Problem: Error for const argument to mapnew().
+Solution: Don't give an error. (closes #7400)
+Files: src/list.c, src/testdir/test_filter_map.vim
+
+Patch 8.2.2076
+Problem: MS-Windows console: sometimes drops typed characters.
+Solution: Do not wait longer than 10 msec for input. (issue #7164)
+Files: src/os_win32.c
+
+Patch 8.2.2077
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/structs.h, src/ex_docmd.c
+
+Patch 8.2.2078
+Problem: Illegal memory access when using :print on invalid text. (Dhiraj
+ Mishra)
+Solution: Check for more composing characters than supported. (closes #7399)
+Files: src/message.c, src/testdir/test_utf8.vim
+
+Patch 8.2.2079
+Problem: Vim9: cannot put a linebreak before or after "in" of ":for".
+Solution: Skip over linebreak.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2080
+Problem: Vim9: no proper error message for using s:var in for loop.
+Solution: Give a specific error.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2081
+Problem: Vim9: cannot handle a linebreak after "=" in assignment.
+Solution: Skip over linebreak. (closes #7407)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2082
+Problem: Vim9: can still use the deprecated #{} dict syntax.
+Solution: Remove support for #{} in Vim9 script. (closes #7406, closes #7405)
+Files: src/dict.c, src/proto/dict.pro, src/eval.c, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_popupwin.vim,
+ src/testdir/test_textprop.vim
+
+Patch 8.2.2083
+Problem: Vim9: crash when using ":silent!" and getting member fails.
+Solution: Jump to on_fatal_error. (closes #7412)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2084
+Problem: CTRL-V U doesn't work to enter a Unicode character when
+ modifyOtherKeys is effective. (Ken Takata)
+Solution: Add a flag to get_literal() for the shift key. (closes #7413)
+Files: src/edit.c, src/proto/edit.pro, src/ex_getln.c, src/getchar.c,
+ src/normal.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.2085
+Problem: Qt translation file is recognized as typescript.
+Solution: Check the first line for "<?xml". (closes #7418)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2086
+Problem: Libvterm tests are only run on Linux.
+Solution: Use static libraries. (Ozaki Kiichi, closes #7419)
+Files: .travis.yml, src/Makefile, src/libvterm/Makefile,
+ src/libvterm/t/run-test.pl
+
+Patch 8.2.2087
+Problem: Vim9: memory leak when statement is truncated.
+Solution: Increment the number of local variables.
+Files: src/vim9compile.c
+
+Patch 8.2.2088
+Problem: Vim9: script test sometimes fails.
+Solution: Unlet variables.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2089
+Problem: Libvterm test fails to build on Mac.
+Solution: Adjust configure to remove a space between -L and the path that
+ follows.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2090
+Problem: Vim9: dict does not accept a key in quotes.
+Solution: Recognize a key in single or double quotes.
+Files: runtime/doc/vim9.txt, src/dict.c, src/proto/dict.pro,
+ src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2091
+Problem: MS-Windows: build warnings.
+Solution: Add a #pragma to suppress the deprecation warning. (Ken Takata)
+ Avoid using a non-ASCII character. (closes #7421)
+Files: src/message.c, src/os_win32.c
+
+Patch 8.2.2092
+Problem: Vim9: unpredictable errors for script tests.
+Solution: Use a different script file name for each run.
+Files: src/testdir/vim9.vim, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2093
+Problem: Vim9: script test sometimes fails.
+Solution: Do not find a script variable by its typval if the name was
+ cleared.
+Files: src/vim9script.c
+
+Patch 8.2.2094
+Problem: When an expression fails getting the next command may be wrong.
+Solution: Do not check for a next command after :eval fails. (closes #7415)
+Files: src/eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2095
+Problem: Vim9: crash when failed dict member is followed by concatenation.
+Solution: Remove the dict from the stack. (closes #7416)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2096
+Problem: Vim9: command modifiers not restored after assignment.
+Solution: Jump to nextline instead of using continue.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2097
+Problem: Vim9: using :silent! when calling a function prevents aborting
+ that function.
+Solution: Add emsg_silent_def and did_emsg_def.
+Files: src/globals.h, src/message.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2098
+Problem: Vim9: function argument of sort() and map() not tested.
+Solution: Add a couple of tests.
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2099
+Problem: Vim9: some checks are not tested.
+Solution: Add a few more tests. Give better error messages.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2100
+Problem: Insufficient testing for function range and dict.
+Solution: Add a few tests. (Dominique Pellé, closes #7428)
+Files: src/testdir/test_functions.vim, src/testdir/test_lambda.vim,
+ src/testdir/test_signals.vim, src/testdir/test_user_func.vim
+
+Patch 8.2.2101
+Problem: Vim9: memory leak when literal dict has an error and when an
+ expression is not complete.
+Solution: Clear the typval and the growarray.
+Files: src/dict.c, src/vim9compile.c
+
+Patch 8.2.2102
+Problem: Vim9: not all error messages tested.
+Solution: Add a few test cases.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.2103
+Problem: Vim9: unreachable code.
+Solution: Remove the code to prepend s: to the variable name
+Files: src/vim9compile.c
+
+Patch 8.2.2104
+Problem: Build problem with Ruby 2.7.
+Solution: Adjust function declarations. (Ozaki Kiichi, closes #7430)
+Files: src/configure.ac, src/auto/configure, src/if_ruby.c
+
+Patch 8.2.2105
+Problem: Sound test is a bit flaky.
+Solution: Use WaitForAssert(). (Dominique Pellé, closes #7429)
+Files: src/testdir/test_sound.vim
+
+Patch 8.2.2106
+Problem: TOML files are not recognized.
+Solution: Match *.toml. (issue #7432)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2107
+Problem: Vim9: some errors not tested.
+Solution: Add tests. Fix getting the right error.
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2108
+Problem: Vim9: no test to check for :let error.
+Solution: Add a test. Rename tests from _let_ to _var_.
+Files: src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2109
+Problem: "vim -" does not work well when modifyOtherKeys is enabled and a
+ shell command is executed on startup.
+Solution: Only change modifyOtherKeys when executing a shell command in raw
+ mode.
+Files: src/os_unix.c
+
+Patch 8.2.2110
+Problem: Cannot use ":shell" when reading from stdin. (Gary Johnson)
+Solution: Revert patch 8.2.1833.
+Files: src/main.c
+
+Patch 8.2.2111
+Problem: GTK: Menu background is the same color as the main window.
+Solution: Fix white space around the text in another way. (closes #7437,
+ closes #7427)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.2112
+Problem: Running tests may leave some files behind.
+Solution: Delete the right files. Fix a few typos. (Dominique Pellé,
+ closes #7436)
+Files: src/testdir/test_filetype.vim, src/testdir/test_messages.vim,
+ src/testdir/test_mksession.vim
+
+Patch 8.2.2113
+Problem: MS-Windows GUI: crash after using ":set guifont=" four times.
+Solution: Check for NULL pointer. (Ken Takata, closes #7434)
+Files: src/gui_dwrite.cpp, src/testdir/test_gui.vim
+
+Patch 8.2.2114
+Problem: Vim9: unreachable code in assignment.
+Solution: Remove impossible condition and code.
+Files: src/vim9compile.c
+
+Patch 8.2.2115
+Problem: Vim9: some errors not tested for; dead code.
+Solution: Add a test. Remove dead code.
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2116
+Problem: MS-Windows GUI: test for 'guifont' is incomplete.
+Solution: Set 'renderoptions'. (Christian Brabandt)
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.2117
+Problem: Some functions use any value as a string.
+Solution: Check that the value is a non-empty string.
+Files: src/typval.c, src/proto/typval.pro, src/mbyte.c, src/filepath.c,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2118
+Problem: Dead code in the job support. (Dominique Pellé)
+Solution: Define USE_ARGV before checking for it.
+Files: src/job.c
+
+Patch 8.2.2119
+Problem: GTK3: status line background color is wrong.
+Solution: Don't change the code for earlier GTK3 versions. (closes #7444)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.2120
+Problem: Not all Perl functionality is tested.
+Solution: Add a few more test cases. (Dominique Pellé, closes #7440)
+Files: src/testdir/test_perl.vim
+
+Patch 8.2.2121
+Problem: Internal error when using \ze before \zs in a pattern.
+Solution: Check the end is never before the start. (closes #7442)
+Files: src/regexp_bt.c, src/regexp_nfa.c,
+ src/testdir/test_regexp_latin.vim
+
+Patch 8.2.2122
+Problem: Vim9: crash when sourcing vim9script early.
+Solution: Use set_option_value() instead of setting p_cpo directly.
+ (closes #7441)
+Files: src/scriptfile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2123
+Problem: After using a complete popup the buffer is listed. (Boris
+ Staletic)
+Solution: Make the buffer unlisted.
+Files: src/popupmenu.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.2124
+Problem: Vim9: a range cannot be computed at runtime.
+Solution: Add the ISN_RANGE instruction.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2125 (after 8.2.2122)
+Problem: Vim9: leaking memory.
+Solution: Free the saved 'cpo' value.
+Files: src/scriptfile.c
+
+Patch 8.2.2126
+Problem: Ruby: missing function prototype.
+Solution: Add the prototype.
+Files: src/if_ruby.c
+
+Patch 8.2.2127
+Problem: Vim9: executing user command defined in Vim9 script not tested.
+Solution: Add a test.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2128
+Problem: There is no way to do something on CTRL-Z.
+Solution: Add VimSuspend and VimResume autocommand events. (closes #7450)
+Files: runtime/doc/autocmd.txt, src/autocmd.c, src/ex_docmd.c,
+ src/normal.c, src/testdir/test_suspend.vim, src/vim.h
+
+Patch 8.2.2129
+Problem: MS-Windows: Checking if a file name is absolute is slow.
+Solution: Do not use mch_FullName(). (closes #7033)
+Files: src/os_mswin.c
+
+Patch 8.2.2130
+Problem: Insert mode completion messages end up in message history.
+Solution: Set msg_hist_off. (closes #7452)
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.2131
+Problem: Vim9: crash when lambda uses same var as assignment.
+Solution: Do not let lookup_local change lv_from_outer, make a copy.
+ (closes #7461)
+Files: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2132
+Problem: Padding not drawn properly for popup window with title.
+Solution: Draw the padding below the title. (closes #7460)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_longtitle_3.dump,
+ src/testdir/dumps/Test_popupwin_longtitle_4.dump
+
+Patch 8.2.2133
+Problem: Vim9: checking for a non-empty string is too strict.
+Solution: Check for any string. (closes #7447)
+Files: src/typval.c, src/proto/typval.pro, src/errors.h, src/filepath.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2134
+Problem: Vim9: get E1099 when autocmd triggered in builtin function.
+Solution: Check that did_emsg increased instead of checking that it changed.
+ (closes #7448)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2135
+Problem: Vim9: #{ still seen as start of dict in some places.
+Solution: Remove check for { after #. (closes #7456)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2136
+Problem: Vim9: Using uninitialized variable.
+Solution: Initialize "len" to zero. Clean up fnamemodify().
+Files: src/filepath.c
+
+Patch 8.2.2137
+Problem: Vim9: :echo and :execute give error for empty argument.
+Solution: Ignore an empty argument. (closes #7468)
+Files: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2138
+Problem: Vim9: "exit_cb" causes Vim to exit.
+Solution: Require white space after a command in Vim9 script. (closes #7467)
+ Also fix that Vim9 style heredoc was not always recognized.
+Files: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/userfunc.c,
+ src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_let.vim
+
+Patch 8.2.2139
+Problem: Vim9: unreachable code in assignment.
+Solution: Don't check "new_local" when "has_index" is set. Add test for
+ wrong type of list index.
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2140
+Problem: Build failure with tiny features.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.2141
+Problem: A user command with try/catch may not catch an expression error.
+Solution: When an expression fails check for following "|". (closes #7469)
+Files: src/eval.c, src/testdir/test_trycatch.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.2142
+Problem: Memory leak when heredoc is not terminated.
+Solution: Free heredoc_trimmed.
+Files: src/userfunc.c
+
+Patch 8.2.2143
+Problem: Vim9: dead code in compiling :unlet.
+Solution: Don't check for "!" a second time.
+Files: src/vim9compile.c
+
+Patch 8.2.2144
+Problem: Vim9: some corner cases not tested.
+Solution: Add a few tests.
+Files: src/testdir/test_vim9_script.vim, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2145
+Problem: Vim9: concatenating lists does not adjust type of result.
+Solution: When list member types differ use "any" member type.
+ (closes #7473)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2146
+Problem: Vim9: automatic conversion of number to string for dict key.
+Solution: Do not convert number to string. (closes #7474)
+Files: src/dict.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2147
+Problem: Quickfix window title not updated in all tab pages.
+Solution: Update the quickfix window title in all tab pages. (Yegappan
+ Lakshmanan, closes #7481, closes #7466)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.2148
+Problem: Vim9: crash when user command doesn't match.
+Solution: Adjust command index. (closes #7479)
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2149
+Problem: Popupwin test for latin1 sometimes fails.
+Solution: Wait for the script to finish.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.2150
+Problem: Github actions CI isn't used for all available platforms.
+Solution: Update the github workflows. (Ozaki Kiichi, closes #7433)
+Files: .coveralls.yml, .github/workflows/ci-windows.yaml,
+ .github/workflows/ci.yml, .travis.yml, README.md,
+ ci/build-snd-dummy.sh, ci/setup-xvfb.sh
+
+Patch 8.2.2151
+Problem: $dir not expanded when configure checks for moonjit.
+Solution: Use double quotes instead of single quotes. (closes #7478)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2152
+Problem: screenpos() does not include the WinBar offset.
+Solution: Use W_WINROW() instead of directly using w_window. (closes #7487)
+Files: src/move.c, src/testdir/test_cursor_func.vim
+
+Patch 8.2.2153
+Problem: Popupwin test for latin1 still fails sometimes.
+Solution: Wait for the "cat" command to finish.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.2154
+Problem: Popupwin test for terminal buffer fails sometimes.
+Solution: Wait for the prompt to appear.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.2155
+Problem: Warning from Github actions for code analysis.
+Solution: Remove the "git checkout HEAD^2" block.
+Files: .github/workflows/codeql-analysis.yml
+
+Patch 8.2.2156
+Problem: Github actions run on pushing a tag.
+Solution: Don't run CI on tag push. Omit coveralls on pull-request.
+ (Ozaki Kiichi, closes #7489)
+Files: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml
+
+Patch 8.2.2157
+Problem: Vim9: can delete a Vim9 script variable from a function.
+Solution: Check the variable is defined in Vim9 script. (closes #7483)
+Files: src/evalvars.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2158
+Problem: CI on cirrus times out, coveralls doesn't always run.
+Solution: Set timeout to 20 minutes. Adjust condition. (closes #7493)
+Files: .cirrus.yml, .github/workflows/ci.yml
+
+Patch 8.2.2159
+Problem: Vim9: when declaring a list it is not allocated yet, causing a
+ following extend() to fail.
+Solution: When fetching a variable value for a list or dict that is null
+ allocate the list or dict, so it can be used. (closes #7491)
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2160
+Problem: Various typos.
+Solution: Fix spelling mistakes. (closes #7494)
+Files: src/bufwrite.c, src/cindent.c, src/cmdexpand.c, src/eval.c,
+ src/ex_cmds.c, src/feature.h, src/getchar.c, src/gui_haiku.cc,
+ src/gui_xmdlg.c, src/help.c, src/if_ole.cpp, src/insexpand.c,
+ src/list.c, src/map.c, src/memline.c, src/normal.c,
+ src/os_win32.c, src/search.c, src/term.c,
+ src/testdir/test_arglist.vim, src/testdir/test_autocmd.vim,
+ src/testdir/test_debugger.vim, src/testdir/test_increment.vim,
+ src/testdir/test_menu.vim, src/testdir/test_netbeans.vim,
+ src/testdir/test_popupwin.vim, src/testdir/test_python2.vim,
+ src/testdir/test_python3.vim, src/testdir/test_sort.vim,
+ src/testdir/test_terminal2.vim, src/testdir/test_terminal3.vim,
+ src/testdir/test_vartabs.vim, src/testdir/test_vimscript.vim,
+ src/textprop.c, src/userfunc.c, src/vim9.h, src/vim9compile.c,
+ src/vim9execute.c
+
+Patch 8.2.2161
+Problem: Arguments -T and -x not tested yet.
+Solution: Add a test. (Dominique Pellé, closes #7490)
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.2162
+Problem: Vim9: Cannot load or store autoload variables.
+Solution: Add ISN_LOADAUTO and ISN_STOREAUTO. (closes #7485)
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/dict.c,
+ src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2163
+Problem: Crash when discarded exception is the current exception.
+Solution: Compare the exception with current_exception. (closes #7499)
+Files: src/ex_eval.c
+
+Patch 8.2.2164
+Problem: Vim9: autoload function doesn't work in script that starts with
+ an upper case letter.
+Solution: Check for the autoload character. (closes #7502)
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2165
+Problem: Vim9: assignment to dict member does not work.
+Solution: Fix recognizing dict member. (closes #7484)
+Files: src/ex_docmd.c, src/eval.c, src/evalvars.c, src/vim.h
+
+Patch 8.2.2166
+Problem: Auto format doesn't work when deleting text.
+Solution: Make "x" trigger auto format. (closes #7504)
+Files: src/ops.c, src/testdir/test_textformat.vim
+
+Patch 8.2.2167
+Problem: Vim9: assign test fails. (Elimar Riesebieter)
+Solution: Adjust the test for dict assignment.
+Files: src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2168
+Problem: Vim9: error for assigning to dict of dict.
+Solution: Remember the destination type. (closes #7506)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2169
+Problem: Vim9: test leaves file behind.
+Solution: Rename script files. (Dominique Pellé, closes #7511)
+ Use try/finally.
+Files: src/testdir/test_vim9_script.vim, src/testdir/vim9.vim
+
+Patch 8.2.2170
+Problem: Vim9: a global function defined in a :def function fails if it
+ uses the context.
+Solution: Create a partial to store the closure context. (see #7410)
+Files: src/userfunc.c, src/proto/userfunc.pro, src/vim9execute.c,
+ src/structs.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2171
+Problem: Valgrind warning for using uninitialized value.
+Solution: Do not use "startp" or "endp" unless there is a match.
+Files: src/regexp_nfa.c
+
+Patch 8.2.2172
+Problem: Vim9: number of arguments is not always checked. (Yegappan
+ Lakshmanan)
+Solution: Check number of arguments when calling function by name.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2173
+Problem: Vim9: get internal error when assigning to undefined variable.
+Solution: Add error message. (closes #7475)
+Files: src/vim9compile.c, src/vim9execute.c, src/errors.h,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2174
+Problem: Mac version doesn't specify the CPU architecture.
+Solution: Add "arm64" or "x86_64". (Yee Cheng Chin, closes #7519)
+Files: src/version.c
+
+Patch 8.2.2175
+Problem: Github actions: clang-11 handling suboptimal.
+Solution: Separate step of installing clang-11. Get ubuntu release name
+ dynamically. (Ozaki Kiichi, closes #7514)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.2176
+Problem: Crash with a sequence of fold commands.
+Solution: Bail out when there are no folds at all. Add a test (Dominique
+ Pellé) (closes #7515)
+Files: src/fold.c, src/testdir/test_fold.vim
+
+Patch 8.2.2177
+Problem: Pattern "^" does not match if the first character in the line is
+ combining. (Rene Kita)
+Solution: Do accept a match at the start of the line. (closes #6963)
+Files: src/regexp_nfa.c, src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.2178
+Problem: Python 3: non-utf8 character cannot be handled.
+Solution: Change the string decode. (Björn Linse, closes #1053)
+Files: src/if_py_both.h, src/if_python.c, src/if_python3.c,
+ src/testdir/test_python3.vim, src/testdir/test_python2.vim
+
+Patch 8.2.2179
+Problem: Vim9: crash when indexing a dict with a number.
+Solution: Add ISN_STOREINDEX. (closes #7513)
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
+ src/errors.h, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2180
+Problem: Vim9: test for error after error is flaky.
+Solution: Wait for job to finish instead of a fixed delay.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2181
+Problem: Valgrind warnings for using uninitialized value.
+Solution: Do not use "start" or "end" unless there is a match.
+Files: src/regexp_nfa.c, src/regexp_bt.c
+
+Patch 8.2.2182
+Problem: Vim9: value of 'magic' is still relevant.
+Solution: Always behave like 'magic' is on in Vim9 script (closes #7509)
+Files: src/option.c, src/proto/option.pro, src/arglist.c, src/buffer.c,
+ src/cmdexpand.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
+ src/insexpand.c, src/normal.c, src/search.c, src/tag.c,
+ src/structs.h, src/globals.h, src/ex_cmds.h,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2183
+Problem: Vim9: value of 'edcompatible' and 'gdefault' are used.
+Solution: Ignore these deprecated options in Vim9 script. (closes #7508)
+Files: src/ex_cmds.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2184
+Problem: Vim9: no error when using "2" for a line number.
+Solution: Give an error message if the line number is invalid. (closes #7492)
+Files: src/typval.c, src/evalfunc.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_cursor_func.vim
+
+Patch 8.2.2185
+Problem: BufUnload is not triggered for the quickfix dummy buffer.
+Solution: Do trigger BufUnload. (Pontus Leitzler, closes #7518, closes #7517)
+ Fix white space around "=".
+Files: src/quickfix.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2186
+Problem: Vim9: error when using 'opfunc'.
+Solution: Do not expect a return value from 'opfunc'. (closes #7510)
+Files: src/eval.c, src/proto/eval.pro, src/ops.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2187
+Problem: Python 3 test fails sometimes. (Christian Brabandt)
+Solution: Accept two SystemError messages.
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.2188
+Problem: Vim9: crash when calling global function from :def function.
+Solution: Set the outer context. Define the partial for the context on the
+ original function. Use a refcount to keep track of which ufunc is
+ using a dfunc. (closes #7525)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9execute.c,
+ src/proto/vim9execute.pro, src/userfunc.c, src/proto/userfunc.pro,
+ src/structs.h, src/vim9.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2189
+Problem: Cannot repeat a command that uses the small delete register.
+Solution: Store the register name instead of the contents. (Christian
+ Brabandt, closes #7527)
+Files: src/ops.c, src/register.c, src/testdir/test_registers.vim
+
+Patch 8.2.2190
+Problem: Vim9: crash when compiled with EXITFREE.
+Solution: Check that df_ufunc is not NULL.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2191
+Problem: Vim9: using wrong name with lambda in nested function.
+Solution: Copy the lambda name earlier. (closes #7525)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2192
+Problem: Codecov on github actions fails.
+Solution: Revert to codecov script. (Ozaki Kiichi, closes #7529)
+Files: Filelist, .github/workflows/ci.yml
+
+Patch 8.2.2193
+Problem: Vim9: can change constant in :def function.
+Solution: Check if a variable is locked. (issue #7526)
+Files: src/evalvars.c, src/proto/evalvars.pro, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2194
+Problem: Vim9: cannot use :const or :final at the script level.
+Solution: Support using :const and :final. (closes #7526)
+Files: src/vim.h, src/evalvars.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2195
+Problem: Failing tests for :const.
+Solution: Add missing check for ASSIGN_FINAL.
+Files: src/eval.c, src/evalvars.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2196
+Problem: :version output has extra spaces in compile and link command.
+Solution: Adjust QUOTESED. (closes #7505)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2197
+Problem: Assert arguments order reversed.
+Solution: Swap the arguments. (Christian Brabandt, closes #7531)
+Files: src/testdir/test_registers.vim
+
+Patch 8.2.2198
+Problem: ml_get error when resizing window and using text property.
+Solution: Validate botline of the right window. (closes #7528)
+Files: src/move.c, src/proto/move.pro, src/textprop.c,
+ src/testdir/test_textprop.vim
+
+Patch 8.2.2199
+Problem: First write after setting 'eol' does not have NL added. (Tomáš
+ Janoušek)
+Solution: Only use b_no_eol_lnum when doing a binary write. (closes #7535)
+Files: src/bufwrite.c, src/testdir/test_writefile.vim
+
+Patch 8.2.2200
+Problem: Vim9: lambda without white space around -> is confusing.
+Solution: Require white space in a :def function. (issue #7503)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2201
+Problem: Write file test fails on MS-Windows.
+Solution: Force edit after setting 'fileformat'.
+Files: src/testdir/test_writefile.vim
+
+Patch 8.2.2202
+Problem: Write file test still fails on MS-Windows.
+Solution: Set fileformat with the :edit command
+Files: src/testdir/test_writefile.vim
+
+Patch 8.2.2203
+Problem: Moodle gift files are not recognized.
+Solution: Add a filetype pattern. (Delim Temizer)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2204
+Problem: Vim9: using -> both for method and lambda is confusing.
+Solution: Use => for lambda in :def function.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/userfunc.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2205
+Problem: Vim9: memory leak when parsing lambda fails.
+Solution: Clear growarrays.
+Files: src/userfunc.c
+
+Patch 8.2.2206
+Problem: :exe command line completion only works for first argument.
+Solution: Skip over text if more is following. (closes #7546)
+Files: src/eval.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.2207
+Problem: Illegal memory access if popup menu items are changed while the
+ menu is visible. (Tomáš Janoušek)
+Solution: Make a copy of the text. (closes #7537)
+Files: src/popupmenu.c, src/testdir/test_popup.vim,
+ src/testdir/dumps/Test_popup_command_04.dump,
+ src/testdir/dumps/Test_popup_command_05.dump
+
+Patch 8.2.2208
+Problem: Vim9: after reloading a script variable index may be invalid.
+Solution: When the sequence number doesn't match give an error for using a
+ script-local variable from a compiled function. (closes #7547)
+Files: src/vim9.h, src/structs.h, src/errors.h, src/vim9compile.c,
+ src/vim9execute.c, src/scriptfile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2209
+Problem: Vim9: return type of => lambda not parsed.
+Solution: Parse and use the return type.
+Files: src/vim9compile.c, src/userfunc.c, src/vim9type.c,
+ src/proto/vim9type.pro, src/vim9script.c, src/eval.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2210
+Problem: Vim9: allocating a type to set TTFLAG_BOOL_OK.
+Solution: Add t_number_bool.
+Files: src/globals.h, src/vim9type.c, src/vim9compile.c
+
+Patch 8.2.2211
+Problem: MS-Windows: can't load Python dll if not in the path.
+Solution: Use the InstallPath registry entry. (Kelvin Lee, closes #7540)
+Files: src/if_python3.c
+
+Patch 8.2.2212
+Problem: Vim9: lambda with => does not work at the script level.
+Solution: Make it work.
+Files: src/eval.c, src/vim9type.c, src/userfunc.c,
+ src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2213
+Problem: Checking white space around -> is not backwards compatible.
+Solution: Only check white space around =>.
+Files: src/userfunc.c
+
+Patch 8.2.2214
+Problem: ":e#" does not give a warning for missing white space.
+Solution: Adjust the check for white space. (closes #7545)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2215
+Problem: Vim9: `=expr` not recognized in global command.
+Solution: Skip over pattern. (issue #7541)
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2216
+Problem: Vim9: range with missing colon can be hard to spot.
+Solution: Include the start of the range in the error. (closes #7543)
+Files: src/errors.h, src/ex_docmd.c, src/vim9compile.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2217
+Problem: Vim9: command modifiers not restored in catch block.
+Solution: Restore command modifiers. (closes #7542)
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2218
+Problem: Vim9: failure if passing more arguments to a lambda than expected.
+Solution: Only put expected arguments on the stack. (closes #7548)
+Files: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2219
+Problem: Vim9: method call with expression not supported.
+Solution: Implement expr->(expr)().
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2220
+Problem: Vim9: memory leak when parsing nested parenthesis.
+Solution: Clear newargs.
+Files: src/userfunc.c
+
+Patch 8.2.2221
+Problem: If <Down> is mapped on the command line 'wildchar' is inserted.
+Solution: Set KeyTyped when using 'wildchar'. (closes #7552)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.2222
+Problem: Vim9: cannot keep script variables when reloading.
+Solution: Add the "noclear" argument to :vim9script.
+Files: runtime/doc/vim9.txt, src/structs.h, src/scriptfile.c,
+ src/vim9script.c, src/ex_cmds.h, src/ex_docmd.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2223
+Problem: Vim9: Reloading marks a :def function as deleted.
+Solution: Clear the function contents but keep the index.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/userfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2224
+Problem: Vim9: crash if script reloaded with different variable type.
+Solution: Check the type when accessing the variable.
+Files: src/vim9execute.c, src/vim9compile.c, src/vim9.h, src/vim9type.c,
+ src/proto/vim9type.pro, src/errors.h, src/evalvars.c,
+ src/vim9script.c, src/proto/vim9script.pro,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2225
+Problem: Vim9: error when using :import in legacy script twice.
+Solution: Make it possible to redefine an import when reloading.
+Files: src/vim9script.c, src/proto/vim9script.pro, src/structs.h,
+ src/evalvars.c, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2226
+Problem: Vim9: script test fails.
+Solution: Add missing change.
+Files: src/scriptfile.c
+
+Patch 8.2.2227
+Problem: Vim9: recognizing lambda is too complicated.
+Solution: Call compile_lambda() and check for NOTDONE.
+Files: src/vim9compile.c, src/userfunc.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2228
+Problem: Vim9: cannot use ":e #" because # starts a comment.
+Solution: Support using %% instead of #.
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2229
+Problem: build failure without the +eval feature.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.2230
+Problem: Vim9: insert completion runs into error.
+Solution: Insert colon before range. (closes #7556)
+Files: src/insexpand.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2231
+Problem: When "--remote file" is used "file" is not reloaded.
+Solution: When a :drop command is used for a file that is already displayed
+ in a window and it has not been changed, check if it needs to be
+ reloaded. (closes #7560)
+Files: src/ex_cmds.c, src/testdir/test_clientserver.vim
+
+Patch 8.2.2232
+Problem: Compiler error for falling through into next case.
+Solution: Move FALLTHROUGH below the #endif
+Files: src/ex_docmd.c
+
+Patch 8.2.2233
+Problem: Cannot convert a byte index into a character index.
+Solution: Add charidx(). (Yegappan Lakshmanan, closes #7561)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/testdir/test_functions.vim
+
+Patch 8.2.2234
+Problem: Command line wildmenu test often fails with Unix GUI.
+Solution: Skip the test where it is expected to fail.
+Files: src/testdir/test_cmdline.vim
+
+Patch 8.2.2235
+Problem: Build failure with some Ruby versions.
+Solution: Adjust the code for Ruby 3.0. (Ozaki Kiichi, closes #7564)
+Files: ci/config.mk.clang.sed, src/if_ruby.c
+
+Patch 8.2.2236
+Problem: 'scroll' option can change when setting the statusline or tabline
+ but the option context is not updated.
+Solution: Update the script context when the scroll option is changed as a
+ side effect. (Christian Brabandt, closes #7533)
+Files: runtime/doc/options.txt, src/scriptfile.c,
+ src/testdir/test_options.vim, src/vim.h, src/window.c
+
+Patch 8.2.2237
+Problem: CI on Mac fails in sed command.
+Solution: Set LC_ALL to "C". (Ozaki Kiichi, closes #7565)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.2238
+Problem: Vim9: cannot load a Vim9 script without the +eval feature.
+Solution: Support Vim9 script syntax without the +eval feature.
+Files: src/ex_docmd.c, src/vim9script.c, src/globals.h, src/main.c,
+ src/autocmd.c, src/buffer.c, src/structs.h, src/menu.c,
+ src/scriptfile.c, src/usercmd.c, src/proto.h, src/errors.h
+
+Patch 8.2.2239
+Problem: Vim9: concatenating lines with backslash is inconvenient.
+Solution: Support concatenating lines starting with '|', useful for
+ :autocmd, :command, etc. (closes #6702)
+Files: runtime/doc/vim9.txt, src/scriptfile.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/vim9compile.c,
+ src/proto/vim9compile.pro, src/userfunc.c, src/structs.h,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2240
+Problem: Clientserver test fails if full path is used.
+Solution: Ignore the path preceding the file name.
+Files: src/testdir/test_clientserver.vim
+
+Patch 8.2.2241
+Problem: Build with Ruby and clang may fail.
+Solution: Adjust configure and sed script. (Ozaki Kiichi, closes #7566)
+Files: ci/config.mk.clang.sed, src/auto/configure, src/configure.ac
+
+Patch 8.2.2242
+Problem: Vim9: line continuation with bar does not work at script level.
+Solution: Check for Vim9 script.
+Files: src/structs.h, src/ex_docmd.c, src/userfunc.c, src/scriptfile.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2243
+Problem: Crash when popup mask contains zeroes.
+Solution: Check boundaries properly. (closes #7569)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.2244
+Problem: Crash when making the window width of the not-current window
+ negative.
+Solution: Make sure the window width is not negative. (closes #7568)
+Files: src/window.c, src/testdir/test_window_cmd.vim
+
+Patch 8.2.2245
+Problem: Vim9: return value of winrestcmd() cannot be executed.
+Solution: Put colons before each range. (closes #7571)
+Files: src/evalwindow.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2246
+Problem: Cursor keys not recognized at the hit-Enter prompt after executing
+ an external command.
+Solution: Change the codes for the extra cursor keys. (closes #7562)
+ Tune the delays to avoid test flakiness.
+Files: runtime/doc/term.txt, src/term.c, src/testdir/test_terminal3.vim
+
+Patch 8.2.2247
+Problem: VMS: various smaller problems.
+Solution: Fix VMS building and other problems. (Zoltan Arpadffy)
+Files: src/term.c, src/gui_gtk_vms.h, src/os_vms_conf.h, src/gui_x11.c,
+ src/Make_vms.mms, src/macros.h, src/gui.h, src/os_unix.h
+
+Patch 8.2.2248
+Problem: ASAN error on exit with GUI.
+Solution: Check the window still has lines. (Christian Brabandt,
+ closes #7573)
+Files: src/term.c
+
+Patch 8.2.2249
+Problem: Termcodes test is flaky when used over ssh with X forwarding.
+Solution: Set 'mousetime' to a larger value. (Dominique Pellé, closes #7576,
+ closes #7563)
+Files: src/testdir/test_termcodes.vim
+
+Patch 8.2.2250
+Problem: Vim9: sublist is ambiguous.
+Solution: Require white space around the colon. (closes #7409)
+Files: src/vim9compile.c, src/eval.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2251
+Problem: Test failures in legacy script.
+Solution: Check for Vim9 script.
+Files: src/eval.c
+
+Patch 8.2.2252
+Problem: Vim9: crash when using lambda without return type in dict.
+Solution: Without a return type use t_unknown. (closes #7587)
+Files: src/vim9type.c, src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2253
+Problem: Vim9: expr test fails.
+Solution: Add missing assignment.
+Files: src/userfunc.c
+
+Patch 8.2.2254
+Problem: Vim9: bool option type is number.
+Solution: Have get_option_value() return a different value for bool and
+ number options. (closes #7583)
+Files: src/option.h, src/option.c, src/proto/option.pro, src/evalvars.c,
+ src/if_mzsch.c, src/if_ruby.c, src/spell.c, src/typval.c,
+ src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2255 (after 8.2.2254)
+Problem: Tcl test fails.
+Solution: Change option handling.
+Files: src/if_tcl.c
+
+Patch 8.2.2256
+Problem: Vim9: cannot use function( after line break in :def function.
+Solution: Check for "(" after "function". (closes #7581)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2257
+Problem: Vim9: using -> for lambda is ambiguous.
+Solution: Stop supporting ->, must use =>.
+Files: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2258
+Problem: Not all OCaml related files are detected.
+Solution: Update OCaml file type detection. (Markus Mottl, closes #7590)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2259
+Problem: Test_Executable() fails when using chroot.
+Solution: Ignore the difference between "sbin" and "bin".
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.2260
+Problem: Window resize test fails in very wide terminal.
+Solution: Resize using the 'columns' option. (Vladimir Lomov, closes #7592)
+Files: src/testdir/test_window_cmd.vim
+
+Patch 8.2.2261
+Problem: Vim9: boolean option gets string type.
+Solution: Check for VAR_BOOL. (closes #7588)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2262
+Problem: Vim9: converting bool to string prefixes v:.
+Solution: Do not use the v: prefix.
+Files: src/evalvars.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2263
+Problem: Vim9: compilation error with try-catch in skipped block.
+Solution: Do not bail out when generate_instr() returns NULL. (closes #7584)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2264
+Problem: Vim9: no error for mismatched :endfunc or :enddef.
+Solution: Check for the mismatch. (issue #7582)
+Files: src/errors.h, src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2265
+Problem: Error message for missing endfunc/enddef is last line.
+Solution: Report the line where the function starts. (closes #7582)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2266
+Problem: Vim9: it can be hard to see where white space is missing.
+Solution: Mention the text where the error was seen. (closes #7580)
+Files: src/errors.h, src/eval.c, src/evalvars.c, src/userfunc.c,
+ src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2267
+Problem: Vim9: cannot use unlet for a dict member.
+Solution: Pass GLV_NO_DECL to get_lval(). (closes #7585)
+Files: src/evalvars.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2268
+Problem: Vim9: list unpack seen as declaration.
+Solution: Check for "var". (closes #7594)
+Files: src/vim9compile.c, src/evalvars.c, src/eval.c, src/vim.h,
+ src/vim9execute.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2269
+Problem: Not all :hardcopy code covered by tests.
+Solution: Test more combinations. (Dominique Pellé, closes #7595)
+Files: src/testdir/test_hardcopy.vim
+
+Patch 8.2.2270
+Problem: Warning for size_t to int conversion. (Randall W. Morris)
+Solution: Add a type cast.
+Files: src/vim9execute.c
+
+Patch 8.2.2271
+Problem: ml_get error when changing hidden buffer in Python.
+Solution: Block updating folds. (closes #7598)
+Files: src/evalbuffer.c, src/testdir/test_python3.vim
+
+Patch 8.2.2272
+Problem: Vim9: extend() can violate the type of a variable.
+Solution: Add the type to the dictionary or list and check items against it.
+ (closes #7593)
+Files: src/structs.h, src/evalvars.c, src/dict.c, src/list.c,
+ src/vim9script.c, src/proto/vim9script.pro, src/vim9compile.c,
+ src/vim9execute.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2273
+Problem: Build failure.
+Solution: Add missing changes to header file.
+Files: src/vim9.h
+
+Patch 8.2.2274
+Problem: badge for Travis is outdated.
+Solution: Update badge for move from travis-ci.org to travis-ci.com.
+Files: README.md
+
+Patch 8.2.2275
+Problem: CTRL-C not recognized in Mintty.
+Solution: Recognize the modifyOtherKeys code ending in "u". (Christian
+ Brabandt, closes #7575)
+Files: src/ui.c
+
+Patch 8.2.2276
+Problem: List of distributed files is outdated.
+Solution: Update the file list. Minor comment updates.
+Files: Filelist, src/clipboard.c, src/fileio.c, src/option.c,
+ src/screen.c, src/testdir/test_signals.vim,
+ src/testdir/Make_vms.mms
+
+Patch 8.2.2277
+Problem: Missing backslash.
+Solution: Add backslash.
+Files: Filelist
+
+Patch 8.2.2278
+Problem: Falling back to old regexp engine can some patterns.
+Solution: Do not fall back once [[:lower:]] or [[:upper:]] is used.
+ (Christian Brabandt, closes #7572)
+Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.2279
+Problem: Vim9: memory leak with catch in skipped block.
+Solution: Free the pattern if not used.
+Files: src/vim9compile.c
+
+Patch 8.2.2280
+Problem: Fuzzy matching doesn't give access to the scores.
+Solution: Return the scores with a third list. (Yegappan Lakshmanan,
+ closes #7596)
+Files: runtime/doc/eval.txt, src/search.c,
+ src/testdir/test_matchfuzzy.vim
+
+Patch 8.2.2281
+Problem: Vim9: compiled "wincmd" cannot be followed by bar.
+Solution: Check for bar after "wincmd". (closes #7599)
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2282
+Problem: Length check mismatch with argument of strncmp(). (Christian
+ Brabandt)
+Solution: Adjust length check.
+Files: src/ui.c
+
+Patch 8.2.2283
+Problem: Vim9: crash when lambda has fewer arguments than expected.
+Solution: Don't check arguments when already failed. (closes #7606)
+Files: src/vim9type.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2284
+Problem: Vim9: cannot set an option to a boolean value.
+Solution: Check for VAR_BOOL. (closes #7603)
+Files: src/evalvars.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2285
+Problem: Vim9: cannot set an option to a false.
+Solution: For VAR_BOOL use string "0". (closes #7603)
+Files: src/evalvars.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2286
+Problem: Sort test fails when locale is Canadian English. (Neil H Watson)
+Solution: Expect a different sort order. (closes #7609)
+Files: src/testdir/test_sort.vim
+
+Patch 8.2.2287
+Problem: Sort test fails when locale is French Canadian.
+Solution: Expect a different sort order. (Dominique Pellé, closes #7609)
+Files: src/testdir/test_sort.vim
+
+Patch 8.2.2288
+Problem: Vim9: line break and comment not always skipped.
+Solution: Skip over white space and then line break more consistently.
+ (closes #7610)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2289
+Problem: Vim9: 'cpo' can become empty.
+Solution: Use empty_option instead of an empty string. Update quickfix
+ buffer after restoring 'cpo'. (closes #7608)
+Files: src/evalfunc.c, src/syntax.c, src/eval.c, src/quickfix.c,
+ src/evalbuffer.c, src/ex_eval.c, src/gui_motif.c, src/map.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.2290
+Problem: Vim9: unlet of global variable cannot be compiled.
+Solution: Skip over variables that might be defined later. Give an error if
+ a subscript is found. (closes #7585)
+Files: src/eval.c, src/vim9compile.c, src/vim.h,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2291
+Problem: Vim9: cannot use "null" for v:null.
+Solution: Support "null" like "true" and "false". (closes #7495)
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/evalvars.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2292
+Problem: Vim: expr test fails.
+Solution: Add missing part of "null" support.
+Files: src/eval.c
+
+Patch 8.2.2293
+Problem: Build failure with Motif. (Tony Mechelynck)
+Solution: Use empty_option instead of empty_options.
+Files: src/gui_motif.c
+
+Patch 8.2.2294
+Problem: VMS: a few remaining problems.
+Solution: Add VMS specific changes. Add Lua support. (Zoltan Arpadffy)
+Files: src/fileio.c, src/os_vms_conf.h, src/Make_vms.mms, src/macros.h,
+ src/os_vms.c, src/vim9execute.c, src/gui_xmebw.c, src/os_unix.h
+
+Patch 8.2.2295
+Problem: Incsearch does not detect empty pattern properly.
+Solution: Return magic state when skipping over a pattern. (Christian
+ Brabandt, closes #7612, closes #6420)
+Files: src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c, src/globals.h,
+ src/option.c, src/tag.c, src/proto/regexp.pro, src/regexp.c,
+ src/search.c, src/structs.h, src/vim9compile.c,
+ src/testdir/dumps/Test_incsearch_sub_01.dump,
+ src/testdir/dumps/Test_incsearch_sub_02.dump,
+ src/testdir/test_search.vim
+
+Patch 8.2.2296
+Problem: Cannot use CTRL-N and CTRL-P in a popup menu.
+Solution: Use CTRL-N like <Down> and CTRL-P like <Up>. (closes #7614)
+Files: runtime/doc/popup.txt, src/popupwin.c,
+ src/testdir/test_popupwin.vim
+
+Patch 8.2.2297
+Problem: Vim9: cannot set 'number' to a boolean value.
+Solution: Use tv_get_bool(). (closes #7615)
+Files: src/evalvars.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2298
+Problem: Vim9: comment right after "(" of function not recognized.
+Solution: Do not skip over white space before calling get_function_args().
+ (closes #7613)
+Files: src/userfunc.c, src/proto/userfunc.pro,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2299
+Problem: Vim9: invalid memory access making error message flaky.
+Solution: Do not check cmd_argt for CMD_USER. (issue #7467)
+Files: src/ex_docmd.c, src/vim9execute.c, src/errors.h,
+ src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2300
+Problem: Vim9: wrong order on type stack when using dict.
+Solution: Generate constants before a dict. (closes #7619)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2301
+Problem: Vim9: cannot unlet a dict or list item.
+Solution: Add ISN_UNLETINDEX. Refactor assignment code to use for unlet.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2302
+Problem: Vim9: using an option value may use uninitialized memory.
+Solution: Clear v_lock. (closes #7620)
+Files: src/typval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2303
+Problem: Vim9: backtick expansion doesn't work for :foldopen.
+Solution: Do recognize backtick expansion. (closes #7621)
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2304
+Problem: Vim9: no test for unletting an imported variable.
+Solution: Add a test. Fix line number in error.
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2305
+Problem: Vim9: "++var" and "--var" are silently accepted.
+Solution: Give an error message.
+Files: src/vim9compile.c, src/eval.c, src/proto/eval.pro,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2306
+Problem: Vim9: when using function reference type is not checked.
+Solution: When using a function reference lookup the type and check the
+ argument types. (issue #7629)
+Files: src/userfunc.c, src/proto/userfunc.pro, src/eval.c, src/structs.h,
+ src/vim9type.c, src/proto/vim9type.pro, src/vim9compile.c,
+ src/vim9execute.c, src/evalvars.c, src/evalfunc.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2307
+Problem: A shell command in the vimrc causes terminal output.
+Solution: Do not call starttermcap() after a shell command if the termcap
+ wasn't active before.
+Files: src/ex_cmds.c
+
+Patch 8.2.2308
+Problem: Vim9: no error when assigning lambda to funcref without return
+ value.
+Solution: Default return value to "any". (closes #7629)
+Files: src/userfunc.c, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2309
+Problem: 0o777 not recognized as octal.
+Solution: Use vim_isodigit(). (Ken Takata, closes #7633, closes #7631)
+Files: src/charset.c, src/testdir/test_eval_stuff.vim
+
+Patch 8.2.2310
+Problem: Vim9: winsaveview() return type is too generic.
+Solution: use dict<number> instead of dict<any>. (closes #7626)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2311
+Problem: Vim9: cannot assign to a variable that shadows a command modifier.
+Solution: Check for assignment after possible command modifier.
+ (closes #7632)
+Files: src/vim9compile.c, src/ex_docmd.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2312
+Problem: Build failure with Ruby 3.0 and 32 bits.
+Solution: Add #ifdef. (closes #7638)
+Files: src/if_ruby.c
+
+Patch 8.2.2313
+Problem: Vim9: using uninitialized field when parsing range. ":silent!" not
+ respected when parsing range fails.
+Solution: Initialize ea.skip. On pattern failure handle it like an error.
+ (closes #7636)
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2314
+Problem: Vim9: returning zero takes two instructions.
+Solution: Add ISN_RETURN_ZERO.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2315
+Problem: Vim9: "enddef" as dict key misinterpreted as function end.
+Solution: Check for following colon. (closes #7640)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2316
+Problem: Vim9: cannot list a lambda function.
+Solution: Support the <lambda>9 notation, like :disassemble. (closes #7634)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2317
+Problem: Vim9: command modifier before list unpack doesn't work.
+Solution: Only recognize "[" directly after the name. (closes #7641)
+Files: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2318
+Problem: Vim9: string and list index work differently.
+Solution: Make string index work like list index. (closes #7643)
+Files: src/eval.c, src/proto/eval.pro, src/vim9execute.c, src/list.c,
+ src/proto/vim9execute.pro, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2319
+Problem: "exptype_T" can be read as "expected type".
+Solution: Rename to "exprtype_T", expression type.
+Files: src/eval.c, src/typval.c, src/proto/typval.pro, src/vim9compile.c,
+ src/proto/vim9compile.pro, src/vim9execute.c, src/structs.h,
+ src/vim9.h
+
+Patch 8.2.2320
+Problem: Vim9: no error for comparing bool with string.
+Solution: Check for wrong types when comparing. (closes #7639)
+Files: src/typval.c, src/errors.h, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2321
+Problem: Vim9: cannot nest closures.
+Solution: Add the nesting level to ISN_LOADOUTER and ISN_STOREOUTER.
+ (closes #7150, closes #7635)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/structs.h,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2322
+Problem: Vim9: closure nested limiting to one level.
+Solution: Add outer_T. Also make STOREOUTER work.
+Files: src/vim9execute.c, src/vim9.h, src/structs.h,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2323
+Problem: Vim9: error when inferring type from empty dict/list.
+Solution: When the member is t_unknown use t_any. (closes #7009)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2324
+Problem: Not easy to get mark en cursor position by character count.
+Solution: Add functions that use character index. (Yegappan Lakshmanan,
+ closes #7648)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/eval.c,
+ src/evalfunc.c, src/proto/eval.pro, src/tag.c,
+ src/testdir/test_cursor_func.vim, src/typval.c
+
+Patch 8.2.2325
+Problem: Vim9: crash if map() changes the item type.
+Solution: Check that the item type is still OK. (closes #7652)
+ Fix problem with mapnew() on range list.
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c,
+ src/list.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2326
+Problem: Build error with +eval feature but without +spell.
+Solution: Adjust #ifdef. (John Marriott)
+Files: src/mbyte.c
+
+Patch 8.2.2327
+Problem: Debugging code included.
+Solution: Remove the debugging code.
+Files: src/vim9execute.c
+
+Patch 8.2.2328
+Problem: Some test files may not be deleted.
+Solution: Add a delete() call, correct name. (Dominique Pellé, closes #7654)
+Files: src/testdir/test_clientserver.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2329
+Problem: Not all ways Vim can be started are tested.
+Solution: Add a test for different program names. (Dominique Pellé,
+ closes #7651)
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.2330
+Problem: Vim9: crash when using :trow in a not executed block.
+Solution: Don't generate the instruction when skipping. (closes #7659)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2331
+Problem: Vim9: wrong error when modifying dict declared with :final.
+Solution: Do not check for writable variable when an index follows.
+ (closes #7657)
+Files: src/vim9compile.c, src/structs.h, src/vim9script.c,
+ src/proto/vim9script.pro, src/evalvars.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2332
+Problem: Vim9: missing :endif not reported when using :windo.
+Solution: Pass a getline function to do_cmdline(). (closes #7650)
+Files: src/vim9execute.c, src/structs.h, src/scriptfile.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2333
+Problem: Vim9: warning for uninitialized variable. (Tony Mechelynck)
+Solution: Initialize "res".
+Files: src/vim9execute.c
+
+Patch 8.2.2334
+Problem: Pascal-like filetypes not always detected.
+Solution: Improved Puppet, InstantFPC and Pascal detection. (Doug Kearns,
+ closes #7662)
+Files: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
+ runtime/scripts.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2335
+Problem: Vim9: "silent return" does not restore command modifiers.
+Solution: Restore command modifiers before returning. (closes #7649)
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2336
+Problem: Vim9: it is not possible to extend a dictionary with different
+ item types.
+Solution: Add extendnew(). (closes #7666)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/list.c, src/proto/list.pro, src/testdir/test_listdict.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2337
+Problem: Configure test for GTK only says "no". (Harm te Hennepe)
+Solution: Hint that a -def package is needed. (closes #5229)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2338
+Problem: Vim9: no error if using job_info() result wrongly.
+Solution: Adjust return type on number of arguments. (closes #7667)
+Files: src/evalfunc.c, src/globals.h, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2339
+Problem: Cannot get the type of a value as a string.
+Solution: Add typename().
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/vim9type.c, src/proto/vim9type.pro,
+ src/testdir/test_vimscript.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2340
+Problem: win_execute() unexpectedly returns number zero when failing.
+Solution: Return an empty string. (closes #7665)
+Files: src/evalwindow.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_execute_func.vim
+
+Patch 8.2.2341
+Problem: Expression command line completion shows variables but not
+ functions after "g:". (Gary Johnson)
+Solution: Prefix "g:" when needed to a global function.
+Files: src/evalfunc.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.2342
+Problem: "char" functions return the wrong column in Insert mode when the
+ cursor is beyond the end of the line.
+Solution: Compute the column correctly. (Yegappan Lakshmanan, closes #7669)
+Files: src/eval.c, src/evalfunc.c, src/testdir/test_cursor_func.vim
+
+Patch 8.2.2343
+Problem: Vim9: return type of readfile() is any.
+Solution: Add readblob() so that readfile() can be expected to always
+ return a list of strings. (closes #7671)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/filepath.c, src/proto/filepath.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2344
+Problem: Using inclusive index for slice is not always desired.
+Solution: Add the slice() method, which has an exclusive index. (closes
+ #7408)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/eval.c, src/proto/eval.pro, src/vim9execute.c,
+ src/proto/vim9execute.pro, src/list.c, src/proto/list.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2345
+Problem: No focus events in a terminal.
+Solution: Add the t_fd and t_fe termcap entries and implement detecting
+ focus events. (Hayaki Saito, Magnus Groß, closes #7673,
+ closes #609, closes #5526)
+Files: runtime/doc/term.txt, src/optiondefs.h, src/term.c, src/term.h
+
+Patch 8.2.2346
+Problem: Codecov reports every little coverage drop.
+Solution: Tolerate a 0.05% drop. Hide the appveyor config file. (Ozaki
+ Kiichi, closes #7678)
+Files: .appveyor.yml, appveyor.yml, .codecov.yml
+
+Patch 8.2.2347
+Problem: Build failure without GUI.
+Solution: Add #ifdef.
+Files: src/term.c
+
+Patch 8.2.2348 (after 8.2.2345)
+Problem: No check for modified files after focus gained. (Mathias Stearn)
+Solution: Call ui_focus_change().
+Files: src/term.c, src/ui.c
+
+Patch 8.2.2349
+Problem: Vim9: cannot handle line break after parenthesis at line end.
+Solution: Skip over line break. (closes #7677)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2350
+Problem: Using "void" for no reason.
+Solution: Use "char *".
+Files: src/ex_docmd.c
+
+Patch 8.2.2351
+Problem: Vim9: error message for "throw" in function that was called with
+ "silent!".
+Solution: Do not throw the exception when not caught or displayed.
+ (closes #7672)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2352
+Problem: If the focus lost/gained escape sequence is received twice it is
+ not ignored. (Christ van Willegen)
+Solution: Adjust the logic to ignore the escape code.
+Files: src/term.c
+
+Patch 8.2.2353
+Problem: Sparql files are not detected.
+Solution: Add the sparql filetype. (closes #7679)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2354
+Problem: Crash with a weird combination of autocommands.
+Solution: Increment b_nwindows when needed. (closes #7674)
+Files: src/ex_cmds.c, src/buffer.c, src/proto/buffer.pro,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.2355
+Problem: Stray test failure on Appveyor.
+Solution: Finish insert command.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.2356
+Problem: Vim9: ":put =expr" does not handle a list properly.
+Solution: Use the same logic as eval_to_string_eap(). (closes #7684)
+Files: src/vim9execute.c, src/eval.c, src/proto/eval.pro,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2357
+Problem: Vim9: crash when parsing function return type fails.
+Solution: Bail out and set return type to "unknown". (closes #7685)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2358
+Problem: Wrong #ifdef for use_xterm_like_mouse().
+Solution: Use FEAT_MOUSE_XTERM.
+Files: src/term.c
+
+Patch 8.2.2359
+Problem: Strange test failure with MS-Windows.
+Solution: Skip the system() call for now.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.2360
+Problem: Test leaves file behind.
+Solution: Delete the right file. (Dominique Pellé, closes #7689)
+Files: src/testdir/test_filetype.vim
+
+Patch 8.2.2361
+Problem: Vim9: no highlight for "s///gc" when using 'opfunc'.
+Solution: Reset 'lazyredraw' temporarily. (closes #7687)
+Files: src/ex_cmds.c
+
+Patch 8.2.2362
+Problem: Vim9: check of builtin function argument type is incomplete.
+Solution: Use need_type() instead of check_arg_type().
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/evalfunc.c,
+ src/proto/evalfunc.pro, src/vim9type.c, src/proto/vim9type.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2363
+Problem: curpos() does not accept a string argument as before.
+solution: Make a string argument work again. (Yegappan Lakshmanan,
+ closes #7690)
+Files: src/evalfunc.c, src/testdir/test_cursor_func.vim
+
+Patch 8.2.2364
+Problem: Vim9: line break in lambda accesses freed memory.
+Solution: Make a copy of the return type. (closes #7664)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2365
+Problem: Vim9: no check for map() changing item type at script level.
+Solution: Check the new value type.
+Files: src/list.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2366
+Problem: When using ":sleep" the cursor is always displayed.
+Solution: Do not display the cursor when using ":sleep!". (Jeremy Lerner,
+ closes #7688)
+Files: runtime/doc/index.txt, runtime/doc/various.txt, src/ex_cmds.h,
+ src/ex_docmd.c, src/normal.c, src/proto/ex_docmd.pro, src/term.c,
+ src/testdir/Make_all.mak, src/testdir/test_sleep.vim
+
+Patch 8.2.2367
+Problem: Test failures on some less often used systems.
+Solution: Adjust printf formats and types. (James McCoy, closes #7691)
+Files: src/errors.h, src/evalfunc.c, src/list.c, src/vim9execute.c
+
+Patch 8.2.2368
+Problem: Insufficient tests for setting options.
+Solution: Add a few tests. (Dominique Pellé, closes #7695)
+Files: src/testdir/test_options.vim
+
+Patch 8.2.2369
+Problem: Vim9: functions return true/false but can't be used as bool.
+Solution: Add ret_number_bool(). (closes #7693)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2370
+Problem: Vim9: command fails in catch block.
+Solution: Reset force_abort and need_rethrow. (closes #7692)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2371
+Problem: Vim9: crash when using types in :for with unpack.
+Solution: Check for skip_var_list() failing. Pass include_type to
+ skip_var_one(). Skip type when compiling. (closes #7694)
+Files: src/vim9compile.c, src/evalvars.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2372 (after 8.2.2371)
+Problem: Confusing error message for wrong :let command.
+Solution: Only check for type in Vim9 script.
+Files: src/evalvars.c
+
+Patch 8.2.2373
+Problem: Vim9: list assignment only accepts a number index.
+Solution: Accept "any" and do a runtime type check. (closes #7694)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2374
+Problem: Accessing uninitialized memory in test_undo.
+Solution: Do not look in typebuf.tb_buf if it is empty. (Dominique Pellé,
+ closes #7697)
+Files: src/edit.c
+
+Patch 8.2.2375
+Problem: Test for RGB color skipped in the terminal.
+Solution: Run the GUI if possible.
+Files: src/testdir/test_highlight.vim
+
+Patch 8.2.2376
+Problem: Vim9: crash when dividing by zero in compiled code using
+ constants.
+Solution: Call num_divide() and num_modulus(). (closes #7704)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2377
+Problem: Vim9: crash when using a range after another expression.
+Solution: Set the variable type to number. Fix using :put with a range and
+ the "=" register. (closes #7706)
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2378
+Problem: Vim9: no error message for dividing by zero.
+Solution: Give an error message. (issue #7704)
+Files: src/errors.h, src/eval.c, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2379
+Problem: Finding spell suggestions twice if 'spellsuggest' contains number.
+Solution: Only do internal suggestions once. (closes #7713)
+Files: src/spellsuggest.c
+
+Patch 8.2.2380
+Problem: Vim9: occasional crash when using try/catch and a timer.
+Solution: Save and restore "need_rethrow" when invoking a timer callback.
+ (closes #7708)
+Files: src/time.c
+
+Patch 8.2.2381
+Problem: Vim9: divide by zero does not abort expression execution.
+Solution: Use a "failed" flag. (issue #7704)
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/vim9compile.c,
+ src/testdir/vim9.vim, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2382 (after 8.2.2381)
+Problem: Build failure.
+Solution: Add missing changes.
+Files: src/vim9execute.c
+
+Patch 8.2.2383
+Problem: Focus escape sequences are not named in ":set termcap" output.
+Solution: Add the names to the list. (closes #7718)
+Files: src/misc2.c
+
+Patch 8.2.2384
+Problem: Turtle filetype not recognized.
+Solution: Add a rule to detect turtle files. (closes #7722)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2385
+Problem: "gj" and "gk" do not work correctly when inside a fold.
+Solution: Move check for folding. (closes #7724, closes #4095)
+Files: src/normal.c, src/testdir/test_fold.vim
+
+Patch 8.2.2386
+Problem: Vim9: crash when using ":silent! put".
+Solution: When ignoring an error for ":silent!" rewind the stack and skip
+ ahead to restoring the cmdmod. (closes #7717)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2387
+Problem: Runtime type check does not mention argument index.
+Solution: Add ct_arg_idx. (closes #7720)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2388
+Problem: No easy way to get the maximum or minimum number value.
+Solution: Add v:numbermax and v:numbermin.
+Files: src/evalvars.c, src/vim.h, src/testdir/test_eval_stuff.vim,
+ runtime/doc/eval.txt
+
+Patch 8.2.2389
+Problem: Test failure on a few systems.
+Solution: Avoid that "char" value is negative.
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h
+
+Patch 8.2.2390
+Problem: Vim9: using positive offset is unexpected.
+Solution: Use int8_T instead of char. (James McCoy)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c
+
+Patch 8.2.2391
+Problem: Memory leak when creating a global function with closure.
+Solution: Create a separate partial for every instantiated function.
+Files: src/userfunc.c, src/vim9execute.c
+
+Patch 8.2.2392
+Problem: Fennel filetype not recognized.
+Solution: Detect with pattern and hashbang. (Chinmay Dalal, closes #7729)
+Files: runtime/filetype.vim, runtime/scripts.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.2393
+Problem: Vim9: error message when script line starts with "[{".
+Solution: Do not give an error for checking for end of list.
+Files: src/dict.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2394
+Problem: Vim9: min() and max() return type is "any".
+Solution: Use return type "number". (closes #7728)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2395
+Problem: Vim9: error for wrong type may report wrong line number.
+Solution: Save and restore the line number when evaluating the expression.
+ (closes #7727)
+Files: src/evalvars.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2396
+Problem: Vim9: no white space allowed before "->".
+Solution: Allow for white space. (closes #7725)
+Files: src/ex_docmd.c, src/eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2397
+Problem: Vim9: "%%" not seen as alternate file name for commands with a
+ buffer name argument.
+Solution: Recognize "%%" like "#". (closes #7732)
+Files: src/buffer.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2398 (after 8.2.2396)
+Problem: Method test fails.
+Solution: Adjust test for allowed white space.
+Files: src/testdir/test_method.vim
+
+Patch 8.2.2399 (after 8.2.2385)
+Problem: Fold test fails in wide terminal.
+Solution: Adjust the test. (Dominique Pelle, closes #7731, closes #7739)
+Files: src/testdir/test_fold.vim
+
+Patch 8.2.2400
+Problem: Vim9: compiled functions are not profiled.
+Solution: Add initial changes to profile compiled functions. Fix that a
+ script-local function was hard to debug.
+Files: runtime/doc/repeat.txt, src/vim9.h, src/vim9compile.c,
+ src/vim9execute.c, src/userfunc.c, src/proto/vim9compile.pro,
+ src/structs.h, src/vim9type.c, src/debugger.c, src/ex_cmds.h,
+ src/ex_docmd.c, src/profiler.c, src/proto/profiler.pro,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_profile.vim
+
+Patch 8.2.2401
+Problem: Build fails without +profiling feature.
+Solution: Add #ifdefs.
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/structs.h,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2402
+Problem: Some filetypes not detected.
+Solution: Detect Ruby Signature and Puppet related files. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2403
+Problem: Vim9: profiling if/elseif/endif not correct.
+Solution: Add profile instructions. Fix that "elseif" was wrong.
+Files: src/vim9compile.c, src/testdir/test_profile.vim,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2404
+Problem: Vim9: profiling try/catch not correct.
+Solution: Add profile instructions. Fix that "entry" did not rethrow an
+ exception.
+Files: src/vim9compile.c, src/vim9execute.c, src/testdir/test_profile.vim
+
+Patch 8.2.2405
+Problem: Vim9: no need to allow white space before "(" for :def.
+Solution: Give an error for stray white space. (issue #7734)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2406
+Problem: Vim9: profiled :def function leaks memory.
+Solution: Delete the profiled instructions.
+Files: src/vim9compile.c
+
+Patch 8.2.2407
+Problem: Old jumplist code is never used.
+Solution: Delete the dead code. (Yegappan Lakshmanan, closes #7740)
+Files: src/mark.c
+
+Patch 8.2.2408
+Problem: MinGW: "--preprocessor" flag no longer supported.
+Solution: Remove the flag, use the defaults. (Christopher Wellons,
+ closes #7741)
+Files: src/GvimExt/Make_ming.mak, src/Make_cyg_ming.mak
+
+Patch 8.2.2409
+Problem: Vim9: profiling only works for one function.
+Solution: Select the right instructions when calling and returning.
+ (closes #7743)
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
+ src/testdir/test_profile.vim
+
+Patch 8.2.2410
+Problem: Build failure without the +profiling feature.
+Solution: Add dummy argument to macro.
+Files: src/vim9.h
+
+Patch 8.2.2411
+Problem: Profile test fails on MS-Windows.
+Solution: Do the profiling in a separate Vim command.
+Files: src/testdir/test_profile.vim
+
+Patch 8.2.2412
+Problem: Not all fields in "cstack" are initialized which might cause a
+ crash.
+Solution: Use CLEAR_FIELD().
+Files: src/ex_docmd.c
+
+Patch 8.2.2413
+Problem: Crash when using :all while using a cmdline window. (Zdenek Dohnal)
+Solution: Disallow :all from the cmdline window.
+Files: src/arglist.c, src/ex_getln.c, src/testdir/test_arglist.vim
+
+Patch 8.2.2414
+Problem: Using freed memory when closing the cmdline window.
+Solution: Check the window is still valid.
+Files: src/ex_getln.c
+
+Patch 8.2.2415
+Problem: No way to check for the cmdwin feature, cmdline_hist is now always
+ enabled.
+Solution: Add has('cmdwin') support. Skip arglist test on Windows
+ temporarily.
+Files: runtime/doc/cmdline.txt, src/evalfunc.c,
+ src/testdir/test_autocmd.vim, src/testdir/test_arglist.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_normal.vim, src/testdir/test_tabpage.vim,
+ src/testdir/test_termcodes.vim, src/testdir/test_window_cmd.vim
+
+Patch 8.2.2416
+Problem: May get stuck in command line window state.
+Solution: Reset "cmdwin_type" when editing buffer fails. Make arglist test
+ pass on MS-Windows.
+Files: src/ex_getln.c, src/testdir/test_arglist.vim
+
+Patch 8.2.2417
+Problem: Condition stack values may be used when not set.
+Solution: Clear cs_script_var_len and cs_block_id just in case they get used
+ later. (issue #7733)
+Files: src/ex_eval.c
+
+Patch 8.2.2418
+Problem: Color not changed if ModeMsg highlight is set in InsertEnter
+ autocmd event. (Paul Swanson)
+Solution: Call highlight_changed() after triggering InsertEnter.
+ (closes #7751)
+Files: src/edit.c
+
+Patch 8.2.2419
+Problem: Autocmd test was failing on MS-Windows with GUI.
+Solution: Remove stray feedkeys().
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.2420
+Problem: Too many problems with using all autocommand events.
+Solution: Disallow defining an autocommand for all events.
+Files: src/autocmd.c, src/errors.h, src/testdir/test_autocmd.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_window_cmd.vim
+
+Patch 8.2.2421
+Problem: Double free when using autocommand with "argdel". (Houyunsong)
+Solution: Add the arglist_locked flag.
+Files: src/arglist.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2422
+Problem: Crash when deleting with line number out of range. (Houyunsong)
+Solution: Avoid using a negative line number.
+Files: src/normal.c, src/testdir/test_ex_mode.vim
+
+Patch 8.2.2423 (after 8.2.2422)
+Problem: Missing error message.
+Solution: Add the error message.
+Files: src/errors.h
+
+Patch 8.2.2424
+Problem: Some tests are known to cause an error with ASAN.
+Solution: Add CheckNotAsan.
+Files: src/testdir/check.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_memory_usage.vim, src/testdir/test_ex_mode.vim
+
+Patch 8.2.2425
+Problem: Cursor on invalid line with range and :substitute.
+Solution: Do not move the cursor when skipping commands. (closes #3434)
+Files: src/ex_cmds.c, src/testdir/test_eval_stuff.vim
+
+Patch 8.2.2426
+Problem: Allowing 'completefunc' to switch windows causes trouble.
+Solution: use "textwinlock" instead of "textlock".
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim,
+ src/testdir/test_popup.vim
+
+Patch 8.2.2427
+Problem: Can still switch windows for 'completefunc'.
+Solution: Also disallow switching windows for other completions.
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim,
+ src/testdir/test_popup.vim
+
+Patch 8.2.2428
+Problem: FocusGained does not work when 'ttymouse' is empty.
+Solution: Don't use the short mouse code if there is a longer matching code.
+ (closes #7755) Add a test.
+Files: src/term.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.2429
+Problem: :goto does not work correctly with text properties. (Sam McCall)
+Solution: Add a test. (Andrew Radev) Also use the text property size when
+ computing the remaining offset. (closes #5930)
+Files: src/memline.c, src/testdir/test_textprop.vim
+
+Patch 8.2.2430
+Problem: :vimgrep expands wildcards twice.
+Solution: Do not expand wildcards a second time.
+Files: src/quickfix.c, src/arglist.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.2431
+Problem: Warning for -fno-strength-reduce with Clang 11.
+Solution: Adjust check for clang version number.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2432
+Problem: Libvterm tests are executed even when libtool doesn't work.
+Solution: Only run libvterm tests if /usr/bin/gcc exists.
+Files: src/Makefile
+
+Patch 8.2.2433
+Problem: Opening cmdline window gives error in BufLeave autocommand.
+Solution: Reset cmdwin_type when triggering the autocommand.
+Files: src/ex_cmds.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.2434
+Problem: Vim9: no error when compiling str2nr() with a number.
+Solution: Add argument type checks. (closes #7759)
+Files: src/evalfunc.c, src/typval.c, src/proto/typval.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2435
+Problem: setline() gives an error for some types.
+Solution: Allow any type, convert each item to a string.
+Files: runtime/doc/eval.txt, src/evalbuffer.c, src/typval.c,
+ src/proto/typval.pro, src/debugger.c, src/vim9execute.c,
+ src/testdir/test_bufline.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2436
+Problem: Vim9 script test is a bit flaky.
+Solution: Wait longer for exit callback.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2437
+Problem: Deprecation warnings with default configuration.
+Solution: Add -Wno-deprecated-declarations.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2438
+Problem: Out of bounds compiler warning.
+Solution: Increase the size of uf_name.
+Files: src/structs.h
+
+Patch 8.2.2439
+Problem: Not easy to figure out what packages to get when installing Vim on
+ a new Ubuntu system.
+Solution: Mention explicit commands that are easy to follow.
+Files: src/INSTALL
+
+Patch 8.2.2440
+Problem: Documentation based on patches is outdated.
+Solution: Add changes to documentation in a patch.
+Files: runtime/doc/arabic.txt, runtime/doc/autocmd.txt,
+ runtime/doc/change.txt, runtime/doc/channel.txt,
+ runtime/doc/cmdline.txt, runtime/doc/debugger.txt,
+ runtime/doc/develop.txt, runtime/doc/digraph.txt,
+ runtime/doc/editing.txt, runtime/doc/eval.txt,
+ runtime/doc/filetype.txt, runtime/doc/ft_sql.txt,
+ runtime/doc/gui.txt, runtime/doc/gui_w32.txt,
+ runtime/doc/gui_x11.txt, runtime/doc/hangulin.txt,
+ runtime/doc/helphelp.txt, runtime/doc/help.txt,
+ runtime/doc/if_lua.txt, runtime/doc/if_mzsch.txt,
+ runtime/doc/if_tcl.txt, runtime/doc/indent.txt,
+ runtime/doc/index.txt, runtime/doc/insert.txt,
+ runtime/doc/intro.txt, runtime/doc/map.txt, runtime/doc/mbyte.txt,
+ runtime/doc/message.txt, runtime/doc/mlang.txt,
+ runtime/doc/motion.txt, runtime/doc/netbeans.txt,
+ runtime/doc/options.txt, runtime/doc/os_dos.txt,
+ runtime/doc/os_haiku.txt, runtime/doc/os_unix.txt,
+ runtime/doc/os_vms.txt, runtime/doc/os_win32.txt,
+ runtime/doc/pattern.txt, runtime/doc/pi_getscript.txt,
+ runtime/doc/pi_logipat.txt, runtime/doc/pi_netrw.txt,
+ runtime/doc/pi_tar.txt, runtime/doc/pi_vimball.txt,
+ runtime/doc/pi_zip.txt, runtime/doc/popup.txt,
+ runtime/doc/print.txt, runtime/doc/quickfix.txt,
+ runtime/doc/quickref.txt, runtime/doc/recover.txt,
+ runtime/doc/remote.txt, runtime/doc/repeat.txt,
+ runtime/doc/rileft.txt, runtime/doc/sign.txt,
+ runtime/doc/spell.txt, runtime/doc/starting.txt,
+ runtime/doc/syntax.txt, runtime/doc/tabpage.txt,
+ runtime/doc/tagsrch.txt, runtime/doc/terminal.txt,
+ runtime/doc/term.txt, runtime/doc/testing.txt,
+ runtime/doc/textprop.txt, runtime/doc/tips.txt,
+ runtime/doc/todo.txt, runtime/doc/uganda.txt,
+ runtime/doc/undo.txt, runtime/doc/usr_02.txt,
+ runtime/doc/usr_03.txt, runtime/doc/usr_04.txt,
+ runtime/doc/usr_05.txt, runtime/doc/usr_07.txt,
+ runtime/doc/usr_08.txt, runtime/doc/usr_10.txt,
+ runtime/doc/usr_11.txt, runtime/doc/usr_20.txt,
+ runtime/doc/usr_22.txt, runtime/doc/usr_23.txt,
+ runtime/doc/usr_24.txt, runtime/doc/usr_27.txt,
+ runtime/doc/usr_30.txt, runtime/doc/usr_31.txt,
+ runtime/doc/usr_40.txt, runtime/doc/usr_41.txt,
+ runtime/doc/usr_42.txt, runtime/doc/usr_44.txt,
+ runtime/doc/usr_45.txt, runtime/doc/usr_46.txt,
+ runtime/doc/usr_90.txt, runtime/doc/usr_toc.txt,
+ runtime/doc/various.txt, runtime/doc/version5.txt,
+ runtime/doc/version6.txt, runtime/doc/version7.txt,
+ runtime/doc/version8.txt, runtime/doc/vi_diff.txt,
+ runtime/doc/vim9.txt, runtime/doc/visual.txt,
+ runtime/doc/windows.txt
+
+Patch 8.2.2441
+Problem: Vim9: extend() does not give an error for a type mismatch.
+Solution: Check the type of the second argument. (closes #7760)
+Files: src/list.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2442
+Problem: Automatic GUI selection does not check for GTK 3.
+Solution: Make SKIP_GTK3 empty for automatic GUI support. Set SKIP_GTK3 to
+ YES when checking for GTK2.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2443
+Problem: Vim9: no compile time error for wrong str2float argument.
+Solution: Check argument type. (closes #7759)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2444
+Problem: Vim9: compile error with combination of operator and list.
+Solution: Generate constants before parsing a list or dict. (closes #7757)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2445
+Problem: Vim9: no proper error for lambda missing return type.
+Solution: Check for this error. (closes #7758)
+Files: src/errors.h, src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2446
+Problem: Setting 'term' empty has different error if compiled with GUI.
+Solution: Insert "else". (closes #7766)
+Files: src/optionstr.c, src/testdir/test_options.vim
+
+Patch 8.2.2447
+Problem: 'foldlevel' not applied to folds restored from session.
+Solution: Set 'foldlevel' after creating the folds. (closes #7767)
+Files: src/fold.c, src/testdir/test_mksession.vim
+
+Patch 8.2.2448
+Problem: Compilation error with Ruby 3.0.
+Solution: Adjust #ifdefs and declaration. (Ken Takata, closes #7761)
+Files: src/if_ruby.c
+
+Patch 8.2.2449
+Problem: Vim9: flatten() always changes the list type.
+Solution: Disallow using flatten() and add flattennew().
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/list.c, src/proto/list.pro, src/errors.h, src/vim9compile.c,
+ src/testdir/test_flatten.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2450
+Problem: MS-Windows: ADS was not preserved if 'backupcopy' is "yes".
+Solution: Copy ADS before truncating the file. (Ken Takata, closes #7762)
+Files: src/bufwrite.c
+
+Patch 8.2.2451
+Problem: MS-Windows: Extended Attributes not preserved.
+Solution: Preserve Extended Attributes when writing a file. (Ken Takata,
+ closes #7765)
+Files: src/os_win32.c
+
+Patch 8.2.2452
+Problem: No completion for the 'filetype' option.
+Solution: Add filetype completion. (Martin Tournoij, closes #7747)
+Files: src/option.c, src/optiondefs.h, src/testdir/test_options.vim
+
+Patch 8.2.2453
+Problem: Vim9: a variable name with "->" in the next line doesn't work.
+Solution: Recognize a variable name by itself. (closes #7770)
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2454
+Problem: Leading space can not be made visible.
+Solution: Add "lead:" to 'listchars'. (closes #7772)
+Files: runtime/doc/options.txt, src/drawline.c, src/globals.h,
+ src/message.c, src/screen.c, src/testdir/test_listchars.vim
+
+Patch 8.2.2455
+Problem: Vim9: key type that can be used for literal dict and indexing is
+ inconsistent.
+Solution: Allow using number and bool as key for a literal dict. (#7771)
+Files: runtime/doc/vim9.txt, src/dict.c, src/eval.c, src/vim9compile.c,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2456
+Problem: Coverity warning for strcpy() into fixed size array.
+Solution: Add a type cast to hopefully silence the bogus warning.
+Files: src/userfunc.c
+
+Patch 8.2.2457
+Problem: Coverity warns for memory leak.
+Solution: Free memory when out of memory.
+Files: src/if_cscope.c
+
+Patch 8.2.2458
+Problem: Coverity warns for :retab using freed memory.
+Solution: Use the updated line pointer when moving text properties.
+Files: src/indent.c
+
+Patch 8.2.2459
+Problem: Coverity reports dead code.
+Solution: Remove the dead code.
+Files: src/eval.c
+
+Patch 8.2.2460
+Problem: Coverity warns for unused value.
+Solution: Do not reset the return value to OK.
+Files: src/vim9compile.c
+
+Patch 8.2.2461
+Problem: Coverity warns for unchecked return value.
+Solution: Add "(void)" to avoid the warning.
+Files: src/vim9execute.c
+
+Patch 8.2.2462
+Problem: Coverity warns for not checking for fseek() error.
+Solution: Give an error message if fseek() fails.
+Files: src/spellfile.c
+
+Patch 8.2.2463
+Problem: Using :arglocal in an autocommand may use freed memory.
+ (houyunsong)
+Solution: Check if the arglist is locked.
+Files: src/arglist.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2464
+Problem: Using freed memory if window closed in autocommand. (houyunsong)
+Solution: Check the window still exists.
+Files: src/ex_cmds.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2465
+Problem: Using freed memory in :psearch. (houyunsong)
+Solution: Check the current window is still valid. Fix flaky test.
+Files: src/search.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2466
+Problem: Max() and min() can give many error messages.
+Solution: Bail out at the first error. (closes #1039, closes #7778)
+Files: src/evalfunc.c, src/testdir/test_functions.vim
+
+Patch 8.2.2467
+Problem: Script generated by :mkview changes alternate file.
+Solution: Only write :balt in the session file. (Harish Rajagopal,
+ closes #7779)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.2468
+Problem: Not easy to get the full command name from a shortened one.
+Solution: Add fullcommand(). (Martin Tournoij, closes #7777)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/ex_docmd.c, src/proto/evalfunc.pro,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.2469
+Problem: Confusing error if :winsize has a wrong argument.
+Solution: Quote the argument in the error. (closes #2523)
+Files: src/ex_docmd.c, src/testdir/test_excmd.vim
+
+Patch 8.2.2470
+Problem: Popup_getoptions() does not get textprop from other tab.
+Solution: use win_valid_any_tab(). (closes #7786)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.2471
+Problem: Popup_setoptions() does not set textprop in other tab.
+Solution: use win_valid_any_tab(). (closes #7788)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.2472
+Problem: Crash when using command line window in an autocommand.
+ (houyunsong)
+Solution: Save and restore au_new_curbuf.
+Files: src/ex_cmds.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2473
+Problem: Crash when leaving command line window triggers autocommand.
+ (houyunsong)
+Solution: Make sure not to close the current window or buffer.
+Files: src/ex_getln.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2474
+Problem: Using freed memory when window is closed by autocommand.
+ (houyunsong)
+Solution: Check the window pointer is still valid.
+Files: src/quickfix.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2475
+Problem: Autocommand tests hangs on MS-Windows.
+Solution: Skip one test.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.2476
+Problem: Using freed memory when using an autocommand to split a window
+ while a buffer is being closed.
+Solution: Disallow splitting when the buffer has b_locked_split set.
+Files: src/buffer.c, src/window.c, src/errors.h, src/structs.h,
+ src/popupwin.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2477
+Problem: Autocommand tests hang on MS-Windows.
+Solution: Skip a couple of tests. Fix file name.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.2478
+Problem: MS-Windows: backup files for plugins are loaded.
+Solution: Do not use the alternate file name for files ending in "~".
+Files: src/filepath.c
+
+Patch 8.2.2479
+Problem: set/getbufline test fails without the job feature.
+Solution: Check whether the job feature is supported. (Dominique Pellé,
+ closes #7790)
+Files: src/testdir/test_bufline.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2480
+Problem: Vim9: some errors for white space do not show context.
+Solution: Include the text at the error.
+Files: src/errors.h, src/dict.c, src/list.c, src/userfunc.c,
+ src/vim9compile.c, src/vim9script.c, src/vim9type.c
+
+Patch 8.2.2481
+Problem: Vim9: confusing error when variable arguments have a default
+ value.
+Solution: Give a specific error message. (closes #7793)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2482
+Problem: Build error.
+Solution: Add new error message.
+Files: src/errors.h
+
+Patch 8.2.2483
+Problem: Vim9: type error for malformed expression.
+Solution: Check for end of command before checking type. (closes #7795)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2484
+Problem: Vim9: Cannot use a comment starting with #{ after an expression.
+Solution: Remove the check for "{" since #{ dictionaries are not supported.
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2485
+Problem: When sourcing a script again the script version isn't reset.
+Solution: Set sn_version to one when sourcing a script again. Clear
+ sn_save_cpo properly. (closes #7608)
+Files: src/scriptfile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2486
+Problem: Vim9: some errors for white space do not show context.
+Solution: Include the text at the error.
+Files: src/errors.h, src/dict.c, src/list.c, src/userfunc.c,
+ src/vim9compile.c, src/vim9type.c
+
+Patch 8.2.2487
+Problem: Terminal shows garbage after double-wide character with a
+ combining character. (Kyoichiro Yamada)
+Solution: Libvterm: do not add the width of the combining character to the
+ glyph width. (closes #7801)
+Files: src/libvterm/src/state.c, src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_combining.dump
+
+Patch 8.2.2488
+Problem: json_encode() gives generic argument error.
+Solution: Mention the type that can't be encoded. (issue #7802)
+Files: src/json.c, src/errors.h, src/testdir/test_json.vim
+
+Patch 8.2.2489
+Problem: current buffer is wrong after deletebufline() fails to delete a
+ line in another buffer.
+Solution: Restore the current buffer.
+Files: src/evalbuffer.c, src/testdir/test_bufline.vim
+
+Patch 8.2.2490
+Problem: 'wrap' option is always reset when starting diff mode.
+Solution: Add the "followwrap" item in 'diffopt'. (Rick Howe, closes #7797)
+Files: runtime/doc/diff.txt, runtime/doc/options.txt, src/diff.c,
+ src/testdir/test_diffmode.vim
+
+Patch 8.2.2491
+Problem: Popup window for text property may show in first screen line.
+Solution: If the text position is invisible do not show the popup window.
+ (closes #7807)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popup_prop_not_visible_01.dump,
+ src/testdir/dumps/Test_popup_prop_not_visible_02.dump,
+ src/testdir/dumps/Test_popup_prop_not_visible_03.dump
+
+Patch 8.2.2492
+Problem: Command line buffer name cannot be translated.
+Solution: Add _(). (Gabriel Dupras, closes #7812)
+Files: src/ex_getln.c
+
+Patch 8.2.2493
+Problem: Text property for text left of window shows up.
+Solution: Check if the text property ends before the current column.
+ (closes #7806)
+Files: src/drawline.c, src/testdir/test_textprop.vim,
+ src/testdir/dumps/Test_textprop_nowrap_01.dump,
+ src/testdir/dumps/Test_textprop_nowrap_02.dump
+
+Patch 8.2.2494
+Problem: ":rviminfo!" clears most of oldfiles.
+Solution: Add VIF_ONLY_CURBUF to read_viminfo(). (closes #1781)
+Files: src/viminfo.c, src/vim.h
+
+Patch 8.2.2495
+Problem: Text jumps up and down when moving the cursor in a small window
+ with wrapping text and 'scrolloff' set.
+Solution: Adjust the computation of w_skipcol. (partly by Ghjuvan Lacambre,
+ closes #7813)
+Files: src/move.c, src/testdir/test_breakindent.vim
+
+Patch 8.2.2496 (after 8.2.2495)
+Problem: Insufficient testing for text jumping fix.
+Solution: Add another test case.
+Files: src/testdir/test_breakindent.vim
+
+Patch 8.2.2497
+Problem: No error when using more than one character for a register name.
+Solution: In Vim9 script check for a single character string. (closes #7814)
+ Fix that VAR_BOOL and VAR_SPECIAL are not considered equal.
+Files: src/errors.h, src/evalfunc.c, src/typval.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2498
+Problem: No test for what 8.2.2494 fixes.
+Solution: Add a simple change to test the fix. (closes #7818)
+Files: src/testdir/test_viminfo.vim
+
+Patch 8.2.2499
+Problem: "vim -g --version" does not redirect output.
+Solution: Reset gui.starting when showing version info. (closes #7815)
+Files: src/main.c, src/testdir/test_version.vim
+
+Patch 8.2.2500 (after 8.2.2499)
+Problem: Build fails without the GUI feature.
+Solution: Add #ifdef.
+Files: src/main.c
+
+Patch 8.2.2501
+Problem: Not always clear where an error is reported.
+Solution: Add the where_T structure and pass it around. (closes #7796)
+Files: src/structs.h, src/vim9type.c, src/proto/vim9type.pro,
+ src/errors.h, src/evalvars.c, src/proto/evalvars.pro, src/eval.c,
+ src/proto/eval.pro, src/vim9execute.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/dict.c, src/list.c,
+ src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2502
+Problem: A few github actions are failing.
+Solution: Install setuptools-rust. (closes #7823)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.2503
+Problem: Vim9: a caught error may leave something on the stack.
+Solution: Drop items from the stack if needed. (closes #7826)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2504
+Problem: Vim9: crash when using an argument from a closure.
+Solution: Check if gen_load_outer is NULL. (closes #7821)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2505
+Problem: Vim9: crash after defining function with invalid return type.
+Solution: Clear function growarrays. Fix memory leak.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2506
+Problem: Vim9: :continue does not work correctly in a :try block
+Solution: Add the TRYCLEANUP instruction. (closes #7827)
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2507
+Problem: Github build may fail if Ubuntu 20.04 is used. Installing rust is
+ not needed.
+Solution: Specify ubuntu-18.04 instead of latest. Update "pip" instead of
+ installing rust. (Ozaki Kiichi, closes #7820)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.2508
+Problem: Cannot change the character displayed in non existing lines.
+Solution: Add the "eob" item to 'fillchars'. (closes #7832, closes #3820)
+Files: runtime/doc/options.txt, runtime/doc/todo.txt,
+ runtime/doc/windows.txt, src/drawscreen.c, src/globals.h,
+ src/optiondefs.h, src/screen.c, src/testdir/test_display.vim
+
+Patch 8.2.2509
+Problem: Tests fail on s390 build.
+Solution: Initialize trycmd_T.
+Files: src/vim9execute.c
+
+Patch 8.2.2510
+Problem: Internal error when popup with mask is zero height or width.
+Solution: Bail out if width or height is zero. (closes #7831)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.2511
+Problem: Vim9: cannot use Vim9 script syntax in some places.
+Solution: Add the :vim9cmd command modifier. Incompatible: Makes ":vim9"
+ mean ":vim9cmd" instead of ":vim9script".
+Files: runtime/doc/vim9.txt, runtime/doc/repeat.txt, src/ex_docmd.c,
+ src/ex_cmds.h, src/structs.h, src/ex_cmdidxs.h, src/errors.h,
+ src/testdir/test_vim9_cmd.vim, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_1.dump,
+ src/testdir/dumps/Test_wildmenu_2.dump,
+ src/testdir/dumps/Test_wildmenu_3.dump,
+ src/testdir/dumps/Test_wildmenu_4.dump,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.2512
+Problem: Vim9: compiling error test sometimes fails.
+Solution: use WaitForAssert() instead of sleeping for a bit. (Dominique
+ Pellé, closes #7837)
+Files: src/testdir/term_util.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2513 (after 8.2.2511)
+Problem: Vim9: missing part of :vim9cmd change.
+Solution: Use command modifier in in_vim9script().
+Files: src/vim9script.c
+
+Patch 8.2.2514 (after 8.2.2511)
+Problem: Vim9: build error in tiny version.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.2515
+Problem: Memory access error when truncating an empty message.
+Solution: Check for an empty string. (Dominique Pellé, closes #7841)
+Files: src/message.c, src/message_test.c
+
+Patch 8.2.2516
+Problem: Test failure on s390. (analyses by James McCoy)
+Solution: Only set the try_finally label when not skipping.
+Files: src/vim9compile.c
+
+Patch 8.2.2517
+Problem: Vim9: fix for s390 not tested on other systems.
+Solution: Add a test.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2518
+Problem: 'listchars' should be window-local.
+Solution: Make 'listchars' global-local. (Yegappan Lakshmanan, Marco Hinz,
+ closes #5206, closes #7850)
+Files: runtime/doc/options.txt, src/buffer.c, src/charset.c,
+ src/drawline.c, src/drawscreen.c, src/evalfunc.c, src/globals.h,
+ src/indent.c, src/message.c, src/misc1.c, src/option.c,
+ src/option.h, src/optiondefs.h, src/optionstr.c,
+ src/proto/screen.pro, src/screen.c, src/structs.h,
+ src/testdir/test_listchars.vim, src/testdir/test_listlbr.vim
+
+Patch 8.2.2519
+Problem: Vim9: no reason to keep strange Vi behavior.
+Solution: ":3" and ":3|" both go to line 3. ":|" does not print the line.
+ (closes #7840)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2520
+Problem: Missing tests for 'listchars'.
+Solution: Add a few more checks. (Yegappan Lakshmanan, closes #7854)
+Files: src/testdir/test_listchars.vim
+
+Patch 8.2.2521
+Problem: Some compilers can't handle pointer initialization. (John
+ Marriott)
+Solution: Use a local struct and assign it afterwards.
+Files: src/screen.c
+
+Patch 8.2.2522
+Problem: Beancount filetype not recognized.
+Solution: Add a detection rule. (Brian Ryall, closes #7859)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2523
+Problem: Svelte filetype not recognized.
+Solution: Add a detection rule. (Brian Ryall, closes #7858)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2524
+Problem: Cannot change the characters displayed in the foldcolumn.
+Solution: Add fields to 'fillchars'. (Yegappan Lakshmanan, Matthieu Coudron,
+ closes #7860)
+Files: runtime/doc/options.txt, src/globals.h, src/mouse.c, src/screen.c,
+ src/testdir/test_display.vim
+
+Patch 8.2.2525
+Problem: Vim9: only local variables checked for a name.
+Solution: Also check arguments and script variables. (closes #7838)
+Files: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2526 (after 8.2.2525)
+Problem: Build failure.
+Solution: Change lookup_scriptvar() arguments.
+Files: src/evalvars.c, src/proto/evalvars.pro
+
+Patch 8.2.2527
+Problem: Vim9: lambda return type is not determined at script level.
+Solution: Compile the lambda to get the return type. (closes #7843)
+Files: src/eval.c, src/vim.h, src/vim9.h,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2528
+Problem: Vim9: crash when compiling lambda fails.
+Solution: Bail out after compilation fails. (closes #7862)
+Files: src/eval.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2529
+Problem: Vim9: Not possible to use legacy and Vim9 script in one file.
+Solution: Vim9: allow for "if false" before :vim9script. (closes #7851)
+Files: runtime/doc/vim9.txt, src/ex_docmd.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2530
+Problem: Vim9: not enough testing for profiling.
+Solution: Add a test with nested functions and a lambda. Fix profiling
+ for calling a compiled function.
+Files: src/profiler.c, src/proto/profiler.pro, src/userfunc.c,
+ src/vim9execute.c, src/testdir/test_profile.vim
+
+Patch 8.2.2531
+Problem: Vim9: the :k command is obscure.
+Solution: Disallow using :k, can use :mark instead. (closes #7874)
+Files: runtime/doc/vim9.txt, src/ex_docmd.c, src/vim9script.c,
+ src/vim9compile.c, src/ex_cmds.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2532
+Problem: Vim9: confusing error if :k is used with a range.
+Solution: Give an error about the range. (issue #7874)
+Files: src/vim9script.c, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2533
+Problem: Vim9: cannot use a range with :unlet.
+Solution: Implement ISN_UNLETRANGE.
+Files: src/errors.h, src/eval.c, src/evalvars.c, src/list.c,
+ src/proto/evalvars.pro, src/proto/list.pro, src/vim9.h,
+ src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2534
+Problem: Missing test coverage.
+Solution: Improve test coverage for completion with different encodings,
+ mapset(), and term function failures. (Dominique Pellé,
+ closes #7877)
+Files: src/testdir/test_edit.vim, src/testdir/test_maparg.vim,
+ src/testdir/test_terminal3.vim
+
+Patch 8.2.2535
+Problem: MS-Windows: cannot run all vim9 tests.
+Solution: Make test_vim9 target work.
+Files: src/Make_mvc.mak
+
+Patch 8.2.2536
+Problem: Coverity complains about unchecked return value.
+Solution: Add (void).
+Files: src/userfunc.c
+
+Patch 8.2.2537
+Problem: Vim9: crash when map() fails.
+Solution: Clear typval before using it. (closes #7884)
+Files: src/list.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2538
+Problem: Crash when using Python list iterator.
+Solution: Increment the list reference count. (closes #7886)
+Files: src/if_py_both.h, src/testdir/test_python3.vim
+
+Patch 8.2.2539
+Problem: Vim9: return from finally block causes a hang.
+Solution: Store both the finally and endtry indexes. (closes #7885)
+Files: src/vim9execute.c, src/vim9compile.c, src/vim9.h,
+ src/testdir/test_vim9_script.vim,
+
+Patch 8.2.2540
+Problem: Vim9: no error for using script var name for argument.
+Solution: Check for this error. (closes #7868)
+Files: src/userfunc.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2541
+Problem: Popup_create() does not allow boolean for "cursorline".
+Solution: Use dict_get_bool(). (issue #7869)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.2542
+Problem: Highlight of char beyond line end is not correct. (Chuan Wei Foo)
+Solution: Fix counting NUL as one cell. Draw one more character if the EOL
+ is part of the match. (closes #7883)
+Files: src/match.c, src/testdir/test_search.vim,
+ src/testdir/dumps/Test_hlsearch_1.dump,
+ src/testdir/dumps/Test_hlsearch_2.dump
+
+Patch 8.2.2543
+Problem: Vim9: a return inside try/catch does not restore exception state
+ properly.
+Solution: When there is no ":finally" jump to ":endtry". (closes #7882)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2544
+Problem: Vim9: error for argument when checking for lambda.
+Solution: Respect the skip flag. (closes #7887)
+Files: src/userfunc.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2545
+Problem: Errors and crash when terminal window is zero height. (Leonid V.
+ Fedorenchik)
+Solution: Do not resize when width or height is zero. (closes #7890)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.2546
+Problem: Typo in mouse key name.
+Solution: Fix the typo. (issue #4725)
+Files: src/misc2.c
+
+Patch 8.2.2547
+Problem: "%" command not accurate for big files.
+Solution: Make it more accurate for files up to 21M lines. (Dominique Pellé,
+ closes #7889)
+Files: src/normal.c
+
+Patch 8.2.2548
+Problem: May get stuck in the cmdline window using :normal.
+Solution: Have nv_esc() return K_IGNORE.
+Files: src/normal.c
+
+Patch 8.2.2549
+Problem: Crash after using "g:" in a for loop.
+Solution: Increment the reference count. (closes #7892)
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2550
+Problem: Signal stack size is wrong with latest glibc 2.34.
+Solution: Use sysconf(_SC_SIGSTKSZ) if available. (Zdenek Dohnal, closes
+ #7895)
+Files: src/config.h.in, src/configure.ac, src/os_unix.c,
+ src/auto/configure
+
+Patch 8.2.2551
+Problem: MS-Windows: colors test file is not installed.
+Solution: Also copy runtime/colors/tools. (Ken Takata, closes #7902)
+Files: nsis/gvim.nsi
+
+Patch 8.2.2552
+Problem: Vim9: no reason to consider "{{{{{{{{" a command.
+Solution: Just use "{". (issue #7904)
+Files: src/ex_cmds.h
+
+Patch 8.2.2553
+Problem: Vim9: Cannot put "|" after "{".
+Solution: Add the EX_TRLBAR flag. (issue #7904)
+Files: src/ex_cmds.h, src/ex_eval.c
+
+Patch 8.2.2554
+Problem: Vim9: exporting a final is not tested.
+Solution: Add a test.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2555
+Problem: Vim9: missing test for 8.2.2553.
+Solution: Add a simple test.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2556
+Problem: Vim9: :import with "as" not fully supported.
+Solution: Implement "as" for more cases.
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2557
+Problem: Compiler warning for shadowed variable.
+Solution: Declare "p" only once.
+Files: src/vim9script.c
+
+Patch 8.2.2558
+Problem: No error if a lambda argument shadows a variable.
+Solution: Check that the argument name shadows a local, argument or script
+ variable. (closes #7898)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/userfunc.c,
+ src/vim9script.c, src/errors.h, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2559
+Problem: MS-Windows: guifont test fails on Windows XP.
+Solution: Check windowsversion().
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.2560
+Problem: Setting 'winminheigt' does not take tabline into account.
+Solution: Subtract the tabline from the available height. (closes #7899)
+Files: src/window.c, src/testdir/test_options.vim
+
+Patch 8.2.2561
+Problem: Not all textprop code is covered by tests.
+Solution: Add a few more test cases. (Dominique Pellé, closes #7908)
+Files: src/testdir/test_textprop.vim
+
+Patch 8.2.2562
+Problem: GUI: star register changed when 'clipboard' is "unnamedplus". (Ingo
+ Karkat)
+Solution: Do not change the star register when 'clipboard' contains
+ "unnamedplus" and not "unnamed". (closes #1516)
+Files: src/register.c
+
+Patch 8.2.2563
+Problem: Cannot use multibyte characters for folding in 'fillchars'.
+Solution: Port pull request 11568 to Vim. (Yegappan Lakshmanan,
+ closes #7924)
+Files: src/drawline.c, src/drawscreen.c, src/macros.h,
+ src/proto/screen.pro, src/screen.c, src/testdir/test_fold.vim,
+ src/testdir/test_profile.vim
+
+Patch 8.2.2564
+Problem: Focus events end Insert mode if 'esckeys' is not set.
+Solution: Do not enable focus events when 'esckeys' is off. (closes #7926)
+Files: src/term.c
+
+Patch 8.2.2565
+Problem: Vim9: "..=" not always recognized.
+Solution: Do not consider "..=" to be string concatenation. (closes #7905)
+Files: src/eval.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2566
+Problem: Vim9: Function name is not recognized.
+Solution: Change lookup_scriptvar() to also find function names.
+ (closes #7770)
+Files: src/vim9script.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2567
+Problem: Vim9: no error if variable is defined for existing function.
+Solution: Check if name isn't already in use. (closes #7897)
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2568
+Problem: Second time a preview popup is opened highlight is not set.
+ (Gabriel Dupras)
+Solution: Apply 'previewpopup' after getting the file. (closes #7928)
+Files: src/tag.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_previewpopup_2.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_3.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_4.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_5.dump
+
+Patch 8.2.2569
+Problem: 'fillchars' "stl" and "stlnc" items must be single byte.
+Solution: Accept multi-byte characters. (Christian Wellenbrock, Yegappan
+ Lakshmanan, closes #7927)
+Files: runtime/doc/options.txt, src/buffer.c, src/macros.h, src/screen.c,
+ src/testdir/test_fold.vim, src/testdir/test_statusline.vim
+
+Patch 8.2.2570
+Problem: Tests fail when run as root.
+Solution: Add a comment mentioning the expected failure. (issue #7919)
+Files: src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
+ src/testdir/test_help.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.2571
+Problem: Test may leave file behind.
+Solution: Delete the temporary file. Don't profile in the running Vim
+ instance.
+Files: src/testdir/test_quickfix.vim, src/testdir/test_profile.vim
+
+Patch 8.2.2572
+Problem: Vim9: crash when getting the types for a legacy function.
+Solution: Initialize the type list growarray. (closes #7929)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2573
+Problem: Vim9: using invalid pointer for error message.
+Solution: Use the right pointer. (closes #7921)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2574
+Problem: Vim9: crash when calling partial with wrong function.
+Solution: Check argument types of called function. (closes #7912)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2575
+Problem: Vim9: a function name with "->" in the next line doesn't work.
+Solution: Recognize a function name by itself. (closes #7770)
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2576
+Problem: Vim9: defining a :func function checks for white space after a
+ comma in the arguments.
+Solution: Only check for white space in a :def function. (closes #7930)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2577
+Problem: Compiler warning for type conversion.
+Solution: Add a typecast. (Mike Williams)
+Files: src/drawline.c
+
+Patch 8.2.2578
+Problem: Lua cannot handle a passed in lambda.
+Solution: Handle VAR_PARTIAL. (Prabir Shrestha, closes #7937, closes #7936)
+Files: src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.2579
+Problem: Vim9: crash in garbagecollect after for loop.
+Solution: Do not set a reference in script item when the name was cleared.
+ (closes #7935)
+Files: src/evalvars.c
+
+Patch 8.2.2580
+Problem: Vim9: checking vararg type is wrong when function is auto-loaded.
+Solution: Use the member type. (closes #7933)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2581
+Problem: Vim9: sourcing Vim9 script triggers a redraw.
+Solution: Do not let setting/restoring 'cpoptions' cause a redraw.
+ (closes #7920)
+Files: src/vim.h, src/option.c, src/optionstr.c, src/scriptfile.c,
+ src/vim9script.c, src/testdir/test_vim9_script.vim,
+ src/testdir/dumps/Test_vim9_no_redraw.dump
+
+Patch 8.2.2582 (after 8.2.2581)
+Problem: Vim9: screendump test fails on MS-Windows.
+Solution: Use :function instead of :def.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2583
+Problem: Vim9: cannot compare result of getenv() with null.
+Solution: Make the return type of getenv() "any". (closes #7943)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2584
+Problem: Vim9: type error for assigning the result of list concatenation to
+ a list.
+Solution: Do not consider concatenation result in a constant. (closes #7942)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2585
+Problem: Vim9: illegal memory access.
+Solution: Check byte right after "null", not one more.
+Files: src/vim9compile.c
+
+Patch 8.2.2586
+Problem: Process id may be invalid.
+Solution: Use sysinfo.uptime to check for recent reboot. (suggested by Hugo
+ van der Sanden, closes #7947)
+Files: src/configure.ac, src/auto/configure, src/config.h.in,
+ src/memline.c, src/testing.c, src/globals.h,
+ src/testdir/test_recover.vim
+
+Patch 8.2.2587 (after 8.2.2586)
+Problem: Recover test fails on FreeBSD.
+Solution: Check for Linux.
+Files: src/testdir/check.vim, src/testdir/test_recover.vim
+
+Patch 8.2.2588 (after 8.2.2586)
+Problem: Build failure with tiny features.
+Solution: Add #ifdef. Run recover test separately.
+Files: src/memline.c, src/testdir/Make_all.mak, src/testdir/test_alot.vim
+
+Patch 8.2.2589 (after 8.2.2586)
+Problem: Recover test hangs in the GUI.
+Solution: Add g:skipped_reason to skip a _nocatch_ test.
+Files: src/testdir/runtest.vim, src/testdir/test_recover.vim
+
+Patch 8.2.2590
+Problem: Vim9: default argument value may cause internal error.
+Solution: Hide later function arguments when compiling the expression.
+ (closes #7948)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2591
+Problem: Poke files are not recognized.
+Solution: Add a filetype entry. (Matt Ihlenfield)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2592
+Problem: Code coverage could be improved.
+Solution: Add a few more tests. (Dominique Pellé, closes #7957)
+Files: src/testdir/test_fileformat.vim, src/testdir/test_normal.vim,
+ src/testdir/test_sleep.vim, src/testdir/test_textformat.vim,
+ src/testdir/test_viminfo.vim
+
+Patch 8.2.2593
+Problem: List of distributed files is incomplete.
+Solution: Add a file and rename another.
+Files: Filelist
+
+Patch 8.2.2594
+Problem: Alternate buffer added to session file even when it's hidden.
+Solution: Check the 'buflisted' option. (closes #7951)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.2595
+Problem: Setting 'winminheight' may cause 'lines' to change.
+Solution: Also take minimal height of other tabpages into account. (#7899)
+Files: src/window.c, src/testdir/test_options.vim
+
+Patch 8.2.2596
+Problem: :doautocmd may confuse scripts listening to WinEnter.
+Solution: Do the current buffer last. (closes #7958)
+Files: src/autocmd.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.2597
+Problem: Vim9: "import * as" does not work at script level.
+Solution: Implement using an imported namespace.
+Files: src/vim.h, src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/vim9execute.c, src/errors.h, src/vim9script.c,
+ src/proto/vim9script.pro, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2598
+Problem: Vim9: :open does not need to be supported.
+Solution: Do not support :open in Vim9 script.
+Files: src/ex_docmd.c, src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2599 (after 8.2.2597)
+Problem: Build failure.
+Solution: Add missing change.
+Files: src/vim9compile.c
+
+Patch 8.2.2600
+Problem: Vim9: crash when putting an unknown type in a dictionary.
+ (Yegappan Lakshmanan)
+Solution: Handle a NULL type pointer.
+Files: src/vim9type.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2601
+Problem: Memory usage test often fails on FreeBSD.
+Solution: Increase multiplier for upper limit.
+Files: src/testdir/test_memory_usage.vim
+
+Patch 8.2.2602
+Problem: Vim9: continue doesn't work if :while is very first command.
+ (Yegappan Lakshmanan)
+Solution: Add one to the continue instruction index.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2603
+Problem: Vim9: no effect if user command is also a function.
+Solution: Check for paren following. (closes #7960)
+Files: src/evalvars.c, src/proto/evalvars.pro, src/ex_docmd.c,
+ src/proto/ex_docmd.pro, src/vim9compile.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2604
+Problem: GUI-specific command line arguments not tested.
+Solution: Add tests for several arguments. (Dominique Pellé, closes #7962)
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.2605
+Problem: Vim9: string index and slice does not include composing chars.
+Solution: Include composing characters. (issue #6563)
+Files: runtime/doc/vim9.txt, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2606
+Problem: strchars() defaults to counting composing characters.
+Solution: Add strcharlen() which ignores composing characters.
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/testdir/test_utf8.vim
+
+Patch 8.2.2607
+Problem: strcharpart() cannot include composing characters.
+Solution: Add the {skipcc} argument.
+Files: runtime/doc/eval.txt, src/evalfunc.c,
+ src/testdir/test_expr_utf8.vim
+
+Patch 8.2.2608
+Problem: Character input not fully tested.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #7963)
+Files: src/testdir/test_functions.vim, src/testdir/test_messages.vim,
+ src/testdir/test_paste.vim, src/testdir/test_registers.vim,
+ src/testdir/test_undo.vim
+
+Patch 8.2.2609
+Problem: Test disabled on MS-Windows even though it should work.
+Solution: Restore the condition for skipping the test. (Ken Takata,
+ closes #7970)
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.2610
+Problem: Mouse click test fails when using remote connection.
+Solution: Use a larger 'mousetime'. (Dominique Pellé, closes #7968)
+Files: src/testdir/test_selectmode.vim
+
+Patch 8.2.2611
+Problem: Conditions for startup tests are not exactly right.
+Solution: Check for type of GUI instead of MS-Windows. (Ozaki Kiichi,
+ closes #7976)
+Files: src/main.c, src/testdir/check.vim, src/testdir/test_startup.vim
+
+Patch 8.2.2612
+Problem: col('.') may get outdated column value.
+Solution: Add a note to the help how to make this work and add a test for
+ it. (closes #7971)
+Files: runtime/doc/map.txt, src/testdir/test_mapping.vim
+
+Patch 8.2.2613 (after 8.2.2612)
+Problem: New test throws exception.
+Solution: Adjust the function cleanup.
+Files: src/testdir/test_mapping.vim
+
+Patch 8.2.2614
+Problem: Vim9: function is deleted while executing.
+Solution: increment the call count, when more than zero do not delete the
+ function but mark it as dead. (closes #7977)
+Files: src/vim9execute.c, src/userfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2615 (after 8.2.2614)
+Problem: Test is sourcing the wrong file.
+Solution: Correct the file name.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2616
+Problem: Vim9: if 'cpo' is changed in Vim9 script it may be restored.
+Solution: Apply the changes to 'cpo' to the restored value.
+Files: runtime/doc/vim9.txt, src/scriptfile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2617
+Problem: Vim9: script variable in a block scope not found by a nested
+ function.
+Solution: Copy the block scope IDs before compiling the function.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2618
+Problem: Vim9: cannot use a normal list name to store function refs.
+Solution: Allow a lower case name if it is indexed.
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2619
+Problem: Vim9: no test for return type of lambda.
+Solution: Add a test.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.2620
+Problem: Vim9: Using #{ for a dictionary gives strange errors.
+Solution: Give an error when using #{ for a comment after a command.
+Files: src/vim9compile.c, src/vim9script.c, src/proto/vim9script.pro,
+ src/errors.h, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2621
+Problem: typval2type() cannot handle recursive structures.
+Solution: Use copyID. (closes #7979)
+Files: src/list.c, src/vim9script.c, src/vim9type.c,
+ src/proto/vim9type.pro, src/testdir/test_vimscript.vim
+
+Patch 8.2.2622
+Problem: GTK: error when starting up and -geometry is given. (Dominique
+ Pellé)
+Solution: Use another function to get the monitor if the window has not been
+ created yet. (closes #7978)
+Files: src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro, src/gui_beval.c,
+ src/gui_xim.c
+
+Patch 8.2.2623
+Problem: Some tests fail when run as root.
+Solution: Use CheckNotRoot.
+Files: src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
+ src/testdir/test_help.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.2624
+Problem: Atom files not recognized.
+Solution: Recognize .atom as XML. (Kivin Locke, closes #7986)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2625
+Problem: Rss files not recognized.
+Solution: Recognize .rss as XML. (Kivin Locke, closes #7987)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2626
+Problem: GTK3: error when starting up and -geometry is given. (Dominique
+ Pellé)
+Solution: Use another function to get the monitor if the window has not been
+ created yet. (closes #7978)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.2627
+Problem: No need to check for BSD after checking for not root.
+Solution: Remove CheckNotBSD. (Ozaki Kiichi, closes #7989)
+Files: src/testdir/test_excmd.vim, src/testdir/test_help.vim,
+ src/testdir/check.vim
+
+Patch 8.2.2628
+Problem: Vim9: #{ can still be used at the script level.
+Solution: Give an error for #{ like in a :def function.
+Files: src/eval.c, src/ex_docmd.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2629
+Problem: Vim9: error for #{{ is not desired.
+Solution: Adjust the checks. (closes #7990)
+Files: src/errors.h, src/vim9script.c, src/ex_docmd.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2630
+Problem: Hard to see where a test gets stuck.
+Solution: Print the executed test function. (Dominique Pellé, closes #7975)
+Files: src/testdir/Makefile
+
+Patch 8.2.2631
+Problem: Commands from winrestcmd() do not always work properly. (Leonid V.
+ Fedorenchik)
+Solution: Repeat the size commands twice. (closes #7988)
+Files: src/evalwindow.c, src/testdir/test_window_cmd.vim
+
+Patch 8.2.2632
+Problem: Not all command line arguments are tested.
+Solution: Add tests for -D and -serverlist. (Dominique Pellé, closes #7992)
+Files: src/testdir/test_clientserver.vim, src/testdir/test_startup.vim
+
+Patch 8.2.2633
+Problem: Multi-byte 'fillchars' for folding do not show properly.
+Solution: Handle multi-byte characters correctly. (Yegappan Lakshmanan,
+ closes #7983, closes #7955)
+Files: src/screen.c, src/testdir/test_fold.vim
+
+Patch 8.2.2634
+Problem: 'tagfunc' does not indicate using a pattern.
+Solution: Add the "r" flag. (Andy Massimino, closes #7982)
+Files: runtime/doc/tagsrch.txt, src/tag.c, src/testdir/test_tagfunc.vim
+
+Patch 8.2.2635
+Problem: Vim9: cannot define an inline function.
+Solution: Make an inline function mostly work.
+Files: src/userfunc.c, src/errors.h, src/vim9compile.c, src/misc2.c,
+ src/proto/vim9compile.pro, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2636 (after 8.2.2635)
+Problem: Memory leak when compiling inline function.
+Solution: Free the prefetched line.
+Files: src/userfunc.c, src/vim9compile.c, src/structs.h, src/globals.h,
+ src/eval.c
+
+Patch 8.2.2637
+Problem: prop_remove() causes a redraw even when nothing changed.
+Solution: Only redraw if a property was removed. (Dominique Pellé)
+Files: src/textprop.c
+
+Patch 8.2.2638
+Problem: Cannot write a message to the terminal from the GUI.
+Solution: Add :echoconsole and use it in the test runner. (issue #7975)
+Files: runtime/doc/eval.txt, runtime/doc/index.txt, src/ex_cmds.h,
+ src/ex_cmdidxs.h, src/eval.c, src/ui.c, src/proto/ui.pro,
+ src/term.c, src/testdir/runtest.vim
+
+Patch 8.2.2639 (after 8.2.2638)
+Problem: Build failure when fsync() is not available.
+Solution: Add #ifdef.
+Files: src/ui.c
+
+Patch 8.2.2640
+Problem: screenstring() returns non-existing composing characters.
+Solution: Only use composing characters if there is a base character.
+Files: src/evalfunc.c, src/testdir/test_listchars.vim
+
+Patch 8.2.2641
+Problem: Display test fails because of lacking redraw.
+Solution: Add a redraw command.
+Files: src/testdir/test_display.vim
+
+Patch 8.2.2642
+Problem: Vim9: no clear error for wrong inline function.
+Solution: Check for something following the "{".
+Files: src/userfunc.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2643
+Problem: Various code not covered by tests.
+Solution: Add a few more test. (Yegappan Lakshmanan, closes #7995)
+Files: src/testdir/test_edit.vim, src/testdir/test_functions.vim,
+ src/testdir/test_mapping.vim, src/testdir/test_termcodes.vim,
+ src/testdir/test_undo.vim
+
+Patch 8.2.2644
+Problem: prop_clear() causes a screen update even when nothing changed.
+Solution: Only redraw when a property was cleared. (Dominique Pellé)
+Files: src/textprop.c
+
+Patch 8.2.2645
+Problem: Using inline function is not properly tested.
+Solution: Add test cases, esp. for errors. Minor code improvements.
+Files: src/userfunc.c, src/errors.h, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2646
+Problem: Vim9: error for not using string doesn't mention argument.
+Solution: Add argument number.
+Files: src/filepath.c, src/typval.c, src/proto/typval.pro, src/errors.h,
+ src/mbyte.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2647
+Problem: Terminal test sometimes hangs.
+Solution: Wait for the shell to display a prompt.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.2648
+Problem: Terminal resize test sometimes hangs.
+Solution: Wait for the shell to display a prompt and other output.
+Files: src/testdir/test_terminal2.vim
+
+Patch 8.2.2649
+Problem: Vim9: some wincmd arguments cause a white space error.
+Solution: Insert a space before the count. (closes #8001)
+Files: src/window.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2650
+Problem: Vim9: command modifiers not handled in nested function.
+Solution: Keep function-local info in a structure and save it on the stack.
+Files: src/vim9execute.c, src/vim9.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2651
+Problem: Vim9: restoring command modifiers happens after jump.
+Solution: Move the restore instruction to before the jump. (closes #8006)
+ Also handle for and while.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2652
+Problem: Vim9: can use command modifier without an effect.
+Solution: Give an error for a misplaced command modifier. Fix error message
+ number.
+Files: src/vim9compile.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/ex_eval.c, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2653
+Problem: Build failure.
+Solution: Add missing changes.
+Files: src/errors.h
+
+Patch 8.2.2654
+Problem: Vim9: getting a character from a string can be slow.
+Solution: Avoid a function call to get the character byte size. (#8000)
+Files: src/vim9execute.vim
+
+Patch 8.2.2655
+Problem: The -w command line argument doesn't work.
+Solution: Don't set 'window' when set with the -w argument. (closes #8011)
+Files: src/term.c, src/testdir/test_startup.vim
+
+Patch 8.2.2656
+Problem: Some command line arguments and regexp errors not tested.
+Solution: Add a few test cases. (Dominique Pellé, closes #8013)
+Files: src/testdir/test_regexp_latin.vim, src/testdir/test_startup.vim
+
+Patch 8.2.2657
+Problem: Vim9: error message for declaring variable in for loop.
+Solution: Clear variables when entering block again. (closes #8012)
+Files: src/ex_eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2658
+Problem: :for cannot loop over a string.
+Solution: Accept a string argument and iterate over its characters.
+Files: runtime/doc/eval.txt, src/eval.c, src/vim9compile.c,
+ src/vim9execute.c, src/errors.h, src/testdir/test_vimscript.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2659 (after 8.2.2658)
+Problem: Eval test fails because for loop on string works.
+Solution: Check looping over function reference fails.
+Files: src/testdir/test_eval_stuff.vim
+
+Patch 8.2.2660
+Problem: Vim9: no error for declaration with trailing text.
+Solution: Give an error. (closes #8014)
+Files: src/evalvars.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2661
+Problem: Leaking memory when looping over a string.
+Solution: Free the memory.
+Files: src/eval.c
+
+Patch 8.2.2662
+Problem: There is no way to avoid some escape sequences.
+Solution: Suppress escape sequences when the --not-a-term argument is used.
+ (Gary Johnson)
+Files: src/main.c, src/os_unix.c, src/testdir/test_startup.vim
+
+Patch 8.2.2663
+Problem: Vim9: leaking memory when inline function has an error.
+Solution: Free the partially allocated function.
+Files: src/userfunc.c
+
+Patch 8.2.2664
+Problem: Vim9: not enough function arguments checked for string.
+Solution: Check in balloon functions. Refactor function arguments.
+Files: src/typval.c, src/proto/typval.pro, src/filepath.c,
+ src/evalfunc.c, src/mbyte.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2665 (after 8.2.2664)
+Problem: Test failures.
+Solution: Check more specific feature. Add missing change.
+Files: src/testdir/test_vim9_builtin.vim, src/evalbuffer.c
+
+Patch 8.2.2666
+Problem: Vim9: not enough function arguments checked for string.
+Solution: Check in ch_logfile(), char2nr() and others.
+Files: src/channel.c, src/evalfunc.c, src/filepath.c, src/eval.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2667
+Problem: prop_find() cannot find item matching both id and type.
+Solution: Add the "both" argument. (Naohiro Ono, closes #8019)
+Files: runtime/doc/textprop.txt, src/testdir/test_textprop.vim,
+ src/textprop.c
+
+Patch 8.2.2668
+Problem: Vim9: omitting "call" for "confirm()" does not give an error.
+Solution: Do not recognize a modifier followed by "(".
+Files: src/ex_docmd.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2669
+Problem: Command line completion does not work after "vim9".
+Solution: Include the "9". (Naohiro Ono, closes #8025)
+Files: src/cmdexpand.c, src/ex_docmd.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.2670
+Problem: Vim9: error for append(0, text).
+Solution: Check for negative number. (closes #8022)
+Files: src/typval.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2671 (after 8.2.2670)
+Problem: Error for line number in legacy script.
+Solution: Check for number type.
+Files: src/typval.c
+
+Patch 8.2.2672
+Problem: Vim9: cannot use :lockvar and :unlockvar in compiled script.
+Solution: Implement locking support.
+Files: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2673
+Problem: Vim9: script-local funcref can have lower case name.
+Solution: Require an upper case name.
+Files: src/evalvars.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2674
+Problem: Motif: cancelling the font dialog resets the font.
+Solution: When no font is selected to not change the font. (closes #7825,
+ closes #8035) Fix compiler warnings.
+Files: src/gui_x11.c, src/gui_motif.c
+
+Patch 8.2.2675
+Problem: Directory change in a terminal window shell is not followed.
+Solution: Add the 'autoshelldir' option. (closes #6290)
+Files: runtime/doc/options.txt, runtime/doc/quickref.txt,
+ runtime/optwin.vim, src/charset.c, src/feature.h, src/option.h,
+ src/optiondefs.h, src/terminal.c, src/testdir/check.vim,
+ src/testdir/test_terminal3.vim
+
+Patch 8.2.2676
+Problem: Missing error message.
+Solution: Add new error message.
+Files: src/errors.h
+
+Patch 8.2.2677
+Problem: Vim9: cannot use only some of the default arguments.
+Solution: Use v:none to use default argument value. Remove
+ uf_def_arg_idx[], use JUMP_IF_ARG_SET. (closes #6504)
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/vim9execute.c,
+ src/userfunc.c, src/structs.h, src/vim9.h,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2678
+Problem: Test for 'autoshelldir' does not reset the option.
+Solution: Reset the option after testing.
+Files: src/testdir/test_terminal3.vim
+
+Patch 8.2.2679
+Problem: Winbar drawn over status line for non-current window with winbar
+ if frame is zero height. (Leonid V. Fedorenchik)
+Solution: Do not draw the window if the frame height is zero. (closes #8037)
+Files: src/drawscreen.c, src/testdir/test_winbar.vim,
+ src/testdir/dumps/Test_winbar_not_visible.dump
+
+Patch 8.2.2680
+Problem: Vim9: problem defining a script variable from legacy function.
+Solution: Check if the script is Vim9, not the current syntax.
+ (closes #8032)
+Files: src/vim9script.c, src/proto/vim9script.pro, src/evalvars.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2681
+Problem: Vim9: test fails for redeclaring script variable.
+Solution: It's OK to assign to an existing script variable in legacy.
+Files: src/evalvars.c
+
+Patch 8.2.2682
+Problem: Vim9: cannot find Name.Func from "import * as Name". (Alexander
+ Goussas)
+Solution: When no variable found try finding a function. (closes #8045)
+ Check that the function was exported.
+Files: src/vim9compile.c, src/vim9script.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2683
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdef.
+Files: src/vim9script.c
+
+Patch 8.2.2684
+Problem: Not enough folding code is tested.
+Solution: Add more test cases. (Yegappan Lakshmanan, closes #8046)
+Files: src/testdir/test_fold.vim, src/testdir/test_mksession.vim,
+ src/testdir/test_source.vim
+
+Patch 8.2.2685 (after 8.2.2152)
+Problem: Custom statusline not drawn correctly with WinBar.
+Solution: Also adjust the column for the custom status line. (Yee Cheng
+ Chin, closes #8047)
+Files: src/drawscreen.c, src/proto/drawscreen.pro, src/screen.c,
+ src/testdir/dumps/Test_winbar_not_visible_custom_statusline.dump,
+ src/testdir/test_winbar.vim
+
+Patch 8.2.2686
+Problem: Status line is not updated when going to cmdline mode.
+Solution: Redraw status lines if 'statusline' is set and going to status
+ line mode. (based on patch from Justin M. Keyes et al.,
+ closes #8044)
+Files: src/ex_getln.c, src/testdir/test_statusline.vim,
+ src/testdir/dumps/Test_statusline_mode_1.dump,
+ src/testdir/dumps/Test_statusline_mode_2.dump
+
+Patch 8.2.2687
+Problem: Vim9: cannot use "const" for global variable in :def function.
+Solution: Do allow using :const for a global variable. (closes #8030)
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2688
+Problem: Vim9: crash when using s: for script variable.
+Solution: Pass the end pointer. (closes #8045)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2689
+Problem: Tiny build fails.
+Solution: Add #ifdef around use of p_stl.
+Files: src/ex_getln.c
+
+Patch 8.2.2690
+Problem: PowerShell files are not recognized.
+Solution: Recognize several PowerShell extension. (Heath Stewart,
+ closes #8051)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2691
+Problem: Autoconf may mess up compiler flags.
+Solution: Handle removing FORTIFY_SOURCE a bit better. (Vladimir Lomov,
+ closes #8049)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2692
+Problem: Vim9: locked script variable can be changed.
+Solution: Check for locked value. (closes #8031)
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2693
+Problem: Vim9: locked script variable can be changed.
+Solution: Check legacy script variable for being locked. (issue #8031)
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2694
+Problem: When 'matchpairs' is empty every character beeps. (Marco Hinz)
+Solution: Bail out when no character in 'matchpairs' was found.
+ (closes #8053) Add assert_nobeep().
+Files: runtime/doc/testing.txt, runtime/doc/eval.txt, src/search.c,
+ src/testing.c, src/proto/testing.pro, src/evalfunc.c,
+ src/testdir/test_textformat.vim
+
+Patch 8.2.2695
+Problem: Cursor position reset with nested autocommands.
+Solution: Only check and reset line numbers for not nested autocommands.
+ (closes #5820)
+Files: src/autocmd.c, src/testdir/test_terminal.vim
+
+Patch 8.2.2696
+Problem: Lua test fails with Lua 5.4.3 and later.
+Solution: Check for different error messages. (Yegappan Lakshmanan,
+ closes #8050)
+Files: src/testdir/test_lua.vim
+
+Patch 8.2.2697
+Problem: Function list test fails.
+Solution: Add missing function. (Yegappan Lakshmanan)
+Files: runtime/doc/usr_41.txt
+
+Patch 8.2.2698 (after 8.2.2696)
+Problem: Lua test fails on MS-Windows.
+Solution: Fall back to old method if "lua -v" doesn't work.
+Files: src/testdir/test_lua.vim
+
+Patch 8.2.2699
+Problem: Lua test fails.
+Solution: Fix condition. (Yegappan Lakshmanan, closes #8060)
+Files: src/testdir/test_lua.vim
+
+Patch 8.2.2700
+Problem: Nested autocmd test fails sometimes.
+Solution: Wait for the job to finish.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.2701
+Problem: Order of removing FORTIFY_SOURCE is wrong.
+Solution: Use the more specific pattern first.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2702
+Problem: Compiler completion test fails when more scripts are added.
+Solution: Add a more generic pattern.
+Files: src/testdir/test_compiler.vim
+
+Patch 8.2.2703
+Problem: Vim9: memory leak when failing on locked variable.
+Solution: Free the memory.
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2704
+Problem: Adding a lot of completions can be a bit slow.
+Solution: Use fast_breakcheck() instead of ui_breakcheck() when adding a
+ list of completions. (Ben Jackson, closes #8061)
+Files: src/insexpand.c
+
+Patch 8.2.2705
+Problem: Vim9: misleading reported line number for wrong type.
+Solution: Remember and use the line number at the start. (closes #8059)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2706
+Problem: Vim9: wrong line number reported for boolean operator.
+Solution: Use the line number before skipping over line break.
+ (closes #8058)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2707 (after 8.2.2704)
+Problem: Adding a lot of completions can still be a bit slow.
+Solution: Add the check for CP_FAST. (Ben Jackson)
+Files: src/insexpand.c
+
+Patch 8.2.2708
+Problem: Test sometimes fails waiting for shell in terminal.
+Solution: Use WaitForAssert() so we can see the actual job status. Use
+ Run_shell_in_terminal().
+Files: src/testdir/term_util.vim, src/testdir/test_mksession.vim
+
+Patch 8.2.2709
+Problem: The GTK GUI has a gap next to the scrollbar.
+Solution: Calculate the scrollbar padding for GTK. (closes #8027)
+Files: src/gui_gtk.c
+
+Patch 8.2.2710
+Problem: Vim9: not all tests cover script and :def function.
+Solution: Run tests in both if possible. Fix differences.
+Files: src/eval.c, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/vim9.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2711
+Problem: "gj" in a closed fold does not move out of the fold. (Marco Hinz)
+Solution: Add a check for being in a closed fold. (closes #8062)
+Files: src/normal.c, src/testdir/test_fold.vim
+
+Patch 8.2.2712
+Problem: Memory leak when adding to a blob fails.
+Solution: Clear the second typval before returning.
+Files: src/eval.c
+
+Patch 8.2.2713
+Problem: Folding code not sufficiently tested.
+Solution: Add a few more test cases. (Yegappan Lakshmanan, closes #8064)
+Files: src/testdir/test_fold.vim
+
+Patch 8.2.2714
+Problem: Filetype pattern ending in star is too far up.
+Solution: Move down to where patterns ending in star belong. (closes #8065)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2715
+Problem: Vim9: tests fail without the channel feature. (Dominique Pellé)
+Solution: Check for the channel feature. (closes #8063)
+Files: src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2716
+Problem: The equivalent class regexp is missing some characters.
+Solution: Update the list of equivalent characters. (Dominique Pellé,
+ closes #8029)
+Files: src/regexp_bt.c, src/regexp_nfa.c,
+ src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.2717
+Problem: GTK menu items don't show a tooltip.
+Solution: Add a callback to show the tooltip. (Leonid V. Fedorenchik,
+ closes #8067, closes #7810)
+Files: src/gui_gtk.c
+
+Patch 8.2.2718
+Problem: Vim9: no explicit test for using a global function without the g:
+ prefix.
+Solution: Add a test case.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.2719
+Problem: Vim9: appending to dict item doesn't work in a :def function.
+Solution: Implement assignment with operator on indexed item.
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2720
+Problem: GTK menu tooltip moves the cursor.
+Solution: Position the cursor after displaying the tooltip. Do not show the
+ tooltip when editing the command line.
+Files: src/gui_gtk.c
+
+Patch 8.2.2721
+Problem: Vim9: cannot have a linebreak inside a lambda.
+Solution: Compile the expression before the arguments.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2722
+Problem: Vim9: crash when using LHS with double index.
+Solution: Handle lhs_dest which is "dest_expr". (closes #8068)
+ Fix confusing error message for missing dict item.
+Files: src/vim9compile.c, src/eval.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2723 (after 8.2.2722)
+Problem: Assignment test fails.
+Solution: Adjust error number.
+Files: src/testdir/test_let.vim
+
+Patch 8.2.2724 (after 8.2.2722)
+Problem: Vim9: concatenating to list in dict not tested.
+Solution: Add a test. (issue #8068)
+Files: src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2725
+Problem: Vim9: message about compiling is wrong when using try/catch.
+Solution: Store the compiling flag with the message. (closes #8071)
+Files: src/ex_docmd.c, src/ex_eval.c, src/structs.h,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2726
+Problem: Confusing error message with white space before comma in the
+ arguments of a function declaration.
+Solution: Give a specific error message. (closes #2235)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2727 (after 8.2.2726)
+Problem: Function test fails.
+Solution: Adjust expected error number.
+Files: src/testdir/test_user_func.vim
+
+Patch 8.2.2728
+Problem: Special key names don't work if 'isident' is cleared.
+Solution: Add vim_isNormalIDc() and use it for special key names.
+ (closes #2389)
+Files: src/charset.c, src/proto/charset.pro, src/misc2.c,
+ src/testdir/test_mapping.vim
+
+Patch 8.2.2729
+Problem: Vim9: wrong error message for referring to legacy script variable.
+Solution: Do allow referring to a variable in legacy script without "s:" if
+ it exists at compile time. (closes #8076)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2730
+Problem: Coverity complains about not restoring character.
+Solution: Also restore the character in case of an error.
+Files: src/vim9compile.c
+
+Patch 8.2.2731
+Problem: Mac: SF symbols are not displayed properly.
+Solution: Add custom range to list of double-width characters. (Yee Cheng
+ Chin, closes #8077)
+Files: src/mbyte.c
+
+Patch 8.2.2732
+Problem: Prompt for s///c in Ex mode can be wrong.
+Solution: Position the cursor before showing the prompt. (closes #8073)
+Files: src/ex_cmds.c, src/testdir/test_ex_mode.vim
+
+Patch 8.2.2733
+Problem: Detecting Lua version is not reliable.
+Solution: Add "vim.lua_version". (Ozaki Kiichi, closes #8080)
+Files: runtime/doc/if_lua.txt, ci/if_ver-1.vim, src/if_lua.c,
+ src/testdir/test_lua.vim
+
+Patch 8.2.2734
+Problem: Vim9: cannot use legacy script-local var from :def function.
+Solution: Do not insist on using "s:" prefix. (closes #8076)
+Files: src/vim9compile.c, src/proto/vim9compile.pro,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2735
+Problem: Vim9: function reference found with prefix, not without.
+Solution: Also find function reference without prefix.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2736
+Problem: Vim9: for loop over string is a bit slow.
+Solution: Avoid using strlen().
+Files: src/vim9execute.c
+
+Patch 8.2.2737
+Problem: Status line not updated when local 'statusline' option set.
+Solution: Check the 'statusline' option of each window.
+Files: src/ex_getln.c, src/testdir/test_statusline.vim,
+ src/testdir/dumps/Test_statusline_mode_1.dump,
+ src/testdir/dumps/Test_statusline_mode_2.dump
+
+Patch 8.2.2738
+Problem: Extending a list with itself can give wrong result.
+Solution: Remember the item before where the insertion happens and skip to
+ after the already inserted items. (closes #1112)
+Files: src/list.c, src/testdir/test_listdict.vim
+
+Patch 8.2.2739
+Problem: Vim9: a lambda accepts too many arguments at the script level.
+Solution: Do not set uf_varargs in Vim9 script.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2740
+Problem: Vim9: lambda with varargs doesn't work.
+Solution: Make "...name" work. Require type to be a list.
+Files: src/userfunc.c, src/vim9compile.c, src/vim9execute.c,
+ src/errors.h, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2741
+Problem: Vim9: Partial call does not check right arguments.
+Solution: Adjust the offset for whether the partial is before or after the
+ arguments. (closes #8091)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2742
+Problem: Vim9: when compiling a function fails it is cleared.
+Solution: Keep the function lines, prevent execution with a different
+ status. (closes #8093)
+Files: src/vim9compile.c, src/structs.h, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2743
+Problem: Vim9: function state stuck when compiling with ":silent!".
+Solution: Check for uf_def_status to be UF_COMPILING.
+Files: src/vim9compile.c, src/message.c, src/globals.h,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2744
+Problem: Vim9: no way to explicitly ignore an argument.
+Solution: Use the underscore as the name for an ignored argument.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/eval.c,
+ src/evalvars.c, src/errors.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2745 (after 8.2.2744)
+Problem: Vim9: missing part of the argument change.
+Solution: Add missing changes.
+Files: src/userfunc.c
+
+Patch 8.2.2746 (after 8.2.2745)
+Problem: Check for duplicate arguments does not work.
+Solution: Correct condition.
+Files: src/userfunc.c
+
+Patch 8.2.2747
+Problem: Vim9: not always an error for too many function arguments.
+Solution: Check for getting too many arguments.
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2748
+Problem: Vim9: memory leak when calling :def function fails.
+Solution: Jump to failed_early instead of returning.
+Files: src/vim9execute.c
+
+Patch 8.2.2749
+Problem: Vim9: test for error can be a bit flaky.
+Solution: Increase the wait time a bit.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.2750
+Problem: Vim9: error for using underscore in nested function.
+Solution: Do not consider "_" already defined. (closes #8096)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2751
+Problem: Coverity warns for using NULL pointer.
+Solution: Check for NULL in calling function.
+Files: src/userfunc.c
+
+Patch 8.2.2752
+problem: coverity reports unreachable code.
+Solution: Remove check for positive index.
+Files: src/typval.c
+
+Patch 8.2.2753
+Problem: Vim9: cannot ignore an item in assignment unpack.
+Solution: Allow using an underscore.
+Files: runtime/doc/vim9.txt, src/vim.h, src/evalvars.c, src/eval.c,
+ src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2754
+Problem: :sleep! does not always hide the cursor.
+Solution: Add the cursor_is_asleep flag. (Jeremy Lerner, closes #8097,
+ closes #7998)
+Files: src/drawscreen.c, src/ex_docmd.c, src/gui.c, src/proto/term.pro,
+ src/term.c
+
+Patch 8.2.2755
+Problem: Vim9: no error for using a number in a condition.
+Solution: Also use ISN_COND2BOOL if the type is t_number_bool.
+ (closes #7644)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2756
+Problem: Vim9: blob index and slice not implemented yet.
+Solution: Implement blob index and slice.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/eval.c,
+ src/blob.c, src/proto/blob.pro, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2757
+Problem: Vim9: blob tests for legacy and Vim9 script are separate.
+Solution: Add CheckLegacyAndVim9Success(). Make blob index assign work.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/errors.h,
+ src/blob.c, src/proto/blob.pro, src/eval.c, src/ex_docmd.c,
+ src/testdir/vim9.vim, src/testdir/test_blob.vim
+
+Patch 8.2.2758
+Problem: Vim9: wrong line number for autoload function with wrong name.
+Solution: Set and restore SOURCING_LNUM. (closes #8100)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2759
+Problem: Vim9: for loop infers type of loop variable.
+Solution: Do not get the member type. (closes #8102)
+Files: src/vim9type.c, src/proto/vim9type.pro, src/list.c,
+ src/vim9script.c, src/proto/vim9script.pro, src/vim.h,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2760
+Problem: Vim9: no error for changing a for loop variable.
+Solution: Make the loop variable read-only. (issue #8102)
+Files: src/eval.c, src/evalvars.c, src/vim9compile.c, src/vim.h,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2761
+Problem: Using "syn include" does not work properly.
+Solution: Don't add current_syn_inc_tag to topgrp. (Jaehwang Jerry Jung,
+ closes #8104)
+Files: src/syntax.c, src/testdir/test_syntax.vim
+
+Patch 8.2.2762
+Problem: Vim9: function line truncated when compiling.
+Solution: Copy the line before processing it. (closes #8101)
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2763
+Problem: Vim9: cannot use type in for loop unpack at script level.
+Solution: Advance over the type name.
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2764
+Problem: Memory leak when default function argument is allocated.
+Solution: Free the expression result.
+Files: src/userfunc.c, src/testdir/test_functions.vim
+
+Patch 8.2.2765
+Problem: Vim9: not all blob operations work.
+Solution: Run more tests also with Vim9 script and :def functions. Fix what
+ doesn't work.
+Files: src/eval.c, src/blob.c, src/proto/blob.pro, src/vim9execute.c,
+ src/errors.h, src/testdir/vim9.vim, src/testdir/test_blob.vim
+
+Patch 8.2.2766 (after 8.2.2765)
+Problem: Test failure.
+Solution: Add change to Vim9 compilation error message.
+Files: src/vim9compile.c
+
+Patch 8.2.2767 (after 8.2.2765)
+Problem: Compiler warning for unused argument.
+Solution: Remove the argument.
+Files: src/blob.c, src/proto/blob.pro, src/vim9execute.c, src/eval.c
+
+Patch 8.2.2768
+Problem: Vim9: memory leak with blob range error.
+Solution: Jump to end instead of returning.
+Files: src/vim9compile.c
+
+Patch 8.2.2769
+Problem: Modula-3 config files are not recognized.
+Solution: Add filetype patterns. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2770
+Problem: Vim9: type of loop variable is not used.
+Solution: Parse and check the variable type. (closes #8107)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2771
+Problem: Vim9: assignment not recognized if declaration was skipped.
+Solution: Also recognized an assignment if the variable does not exist.
+ (closes #8108)
+Files: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2772
+Problem: Problems when restoring 'runtimepath' from a session file.
+Solution: Add the "skiprtp" item in 'sessionoptions'.
+Files: runtime/doc/options.txt, src/session.c, src/optionstr.c,
+ src/option.h, src/vim.h, src/option.c,
+ src/testdir/test_mksession.vim
+
+Patch 8.2.2773
+Problem: PSL filetype not recognized.
+Solution: Add a filetype pattern. (Daniel Kho, closes #8117)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2774
+Problem: Vim9: cannot import an existing name even when using "as".
+Solution: Do not check for an existing name when using "as". (closes #8113)
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2775
+Problem: Vim9: wrong line number used for some commands.
+Solution: For :exe, :echo and the like use the line number of the start of
+ the command. When calling a function set the line number in the
+ script context.
+Files: src/vim9compile.c, src/vim9execute.c, src/structs.h,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2776
+Problem: :mksession uses current value of 'splitbelow' and 'splitright'
+ even though "options" is not in 'sessionoptions'. (Maxim Kim)
+Solution: Save and restore the values, instead of setting to the current
+ value. (closes #8119)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.2777
+Problem: Vim9: blob operations not tested in all ways.
+Solution: Run tests with CheckLegacyAndVim9Success(). Make blob assign with
+ index work.
+Files: src/vim9compile.c, src/vim9execute.c, src/errors.h, src/blob.c,
+ src/proto/blob.pro, src/testdir/test_blob.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2778
+Problem: Problem restoring 'packpath' in session.
+Solution: Let "skiprtp" also apply to 'packpath'.
+Files: runtime/doc/options.txt, src/option.c,
+ src/testdir/test_mksession.vim
+
+Patch 8.2.2779
+Problem: Memory access error in remove() for blob.
+Solution: Adjust length for memmove().
+Files: src/blob.c
+
+Patch 8.2.2780
+Problem: Vim9: for loop over blob doesn't work.
+Solution: Make it work.
+Files: src/vim9compile.c, src/vim9execute.c, src/testdir/test_blob.vim
+
+Patch 8.2.2781
+Problem: Add() silently skips when adding to null list or blob.
+Solution: Give an error in Vim9 script. Allocate blob when it is NULL like
+ with list and dict.
+Files: src/list.c, src/evalvars.c, src/vim9execute.c,
+ src/testdir/test_blob.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2782
+Problem: Vim9: blob operations not fully tested.
+Solution: Make more blob tests run in Vim9 script. Fix filter(). Make
+ insert() give an error for a null blob, like add().
+Files: src/list.c, src/testdir/test_blob.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2783
+Problem: Duplicate code for setting byte in blob, blob test may fail.
+Solution: Call blob_set_append(). Test sort failure with "N".
+Files: src/eval.c, src/testdir/test_blob.vim
+
+Patch 8.2.2784
+Problem: Vim9: cannot use \=expr in :substitute.
+Solution: Compile the expression into instructions and execute them when
+ invoked.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/proto/vim9execute.pro, src/regexp.c, src/ex_cmds.c,
+ src/proto/ex_cmds.pro, src/globals.h,
+ src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2785
+Problem: Vim9: cannot redirect to local variable.
+Solution: Compile :redir when redirecting to a variable.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/errors.h,
+ src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2786
+Problem: Vim9: memory leak when using :s with expression.
+Solution: Clean up the instruction list.
+Files: src/vim9compile.c
+
+Patch 8.2.2787
+Problem: MS-Windows: crash when using :echoconsole.
+Solution: Do not write a NUL when it's already there.
+Files: src/os_win32.c
+
+Patch 8.2.2788
+Problem: Raku is now the only name what once was called perl6.
+Solution: Adjust the filetype detection. (closes #8120)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2789
+Problem: Vim9: using \=expr in :substitute does not handle jumps.
+Solution: Start with instruction count zero. (closes #8128)
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2790 (after 8.2.2788)
+Problem: filetype test fails
+Solution: Also update the scripts detection
+Files: runtime/scripts.vim
+
+Patch 8.2.2791
+Problem: Vim9: memory leak when using \=expr in :substitute.
+Solution: Do not allocate a new instruction list.
+Files: src/vim9compile.c
+
+Patch 8.2.2792
+Problem: Vim9: :disas shows instructions for default args but no text.
+Solution: Show the expression test above the default argument instructions.
+ (closes #8129)
+Files: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2793
+Problem: MS-Windows: string literals are writable with MSVC.
+Solution: Add the /GF compiler flag. Make mch_write() safer. (Ken Takata,
+ closes #8133)
+Files: src/Make_mvc.mak, src/os_win32.c
+
+Patch 8.2.2794
+Problem: Linux users don't know how to get ncurses.
+Solution: Add the name of the package. (closes #8132)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2795
+Problem: Coverity warns for not using return value.
+Solution: Check the return value of compiling the substitute expression.
+Files: src/vim9compile.c
+
+Patch 8.2.2796
+Problem: Vim9: redir to variable does not accept an index.
+Solution: Make the index work.
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2797
+Problem: Search highlight disappears in the Visual area.
+Solution: Combine the search attributes. (closes #8134)
+Files: src/drawline.c, src/testdir/test_search.vim,
+ src/testdir/dumps/Test_hlsearch_visual_1.dump
+
+Patch 8.2.2798
+Problem: Vim9: redir to variable with append does not accept an index.
+Solution: Make the appending work.
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2799
+Problem: Vim9: type casts don't fully work at the script level.
+Solution: Implement the missing piece.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2800
+Problem: After a timer displays text a hit-enter prompt is given.
+Solution: Reset msg_didany and need_wait_return. (closes #8136)
+Files: src/drawscreen.c, src/testdir/test_timers.vim
+
+Patch 8.2.2801
+Problem: Free Pascal makefile not recognized.
+Solution: Add the fpcmake filetype. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2802
+Problem: Vim9: illegal memory access.
+Solution: Check for comment before checking for white space. (closes #8142)
+Files: src/eval.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2803
+Problem: Flicker when the popup menu has an info popup.
+Solution: Avoid drawing over the popup when it's going to be redrawn in the
+ same position. (closes #8131) Also avoid redrawing the scrollbar.
+Files: src/popupmenu.c, src/proto/popupmenu.pro, src/drawscreen.c,
+ src/globals.h
+
+Patch 8.2.2804
+Problem: Setting buffer local mapping with mapset() changes global mapping.
+Solution: Only set the local mapping. (closes #8143)
+Files: src/map.c, src/testdir/test_maparg.vim
+
+Patch 8.2.2805
+Problem: Vim9: cannot use legacy syntax in Vim9 script.
+Solution: Add the :legacy command.
+Files: src/ex_cmds.h, runtime/doc/vim9.txt, runtime/doc/index.txt
+ src/ex_cmdidxs.h, src/ex_docmd.c, src/structs.h, src/vim9script.c,
+ src/vim9compile.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2806
+Problem: Vim9: using "++nr" as a command might not work.
+Solution: Do not recognize "++" and "--" in a following line as addition or
+ subtraction.
+Files: src/vim9compile.c, src/ex_docmd.c, src/ex_cmds.h, src/ex_cmdidxs.h,
+ src/vim9script.c, src/proto/vim9script.pro, src/eval.c,
+ src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2807
+Problem: Build fails with tiny features.
+Solution: Use a dummy function for ex_incdec().
+Files: src/ex_docmd.c
+
+Patch 8.2.2808
+Problem: Vim9: increment and decrement not sufficiently tested.
+Solution: Add assertions.
+Files: src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2809
+Problem: Vim9: :def function compilation fails when using :legacy.
+Solution: Reset CMOD_LEGACY when compiling a function. (closes #8137)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2810
+Problem: Vim9: crash when calling a function in a substitute expression.
+Solution: Set the instructions back to the substitute expression
+ instructions. (closes #8148)
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2811
+Problem: Vim9: error for missing white space doesn't say where it is
+ missing
+Solution: Mention the command. (closes #8149)
+Files: src/ex_docmd.c, src/errors.h, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2812
+Problem: Vim9: still crash when using substitute expression.
+Solution: Put the instruction list in the stack frame. (closes #8154)
+Files: src/vim9execute.c, src/vim9.h, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2813
+Problem: Cannot grep using fuzzy matching.
+Solution: Add the "f" flag to :vimgrep. (Yegappan Lakshmanan, closes #8152)
+Files: runtime/doc/quickfix.txt, src/ex_cmds.c, src/proto/search.pro,
+ src/quickfix.c, src/search.c, src/vim.h,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.2814 (after 8.2.2812)
+Problem: Vim9: unused variable. (John Marriott)
+Solution: Adjust #ifdef.
+Files: src/vim9execute.c
+
+Patch 8.2.2815
+Problem: Status line flickers when redrawing popup menu info.
+Solution: Do not redraw the status line when the focus is in the popup
+ window. (issue #8144)
+Files: src/popupmenu.c
+
+Patch 8.2.2816
+Problem: Vim9: comment below expression in lambda causes problems.
+Solution: Use a single space for empty and comment lines. (closes #8156)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2817
+Problem: Vim9: script sourcing continues after an error.
+Solution: Make an error in any command in "vim9script" abort sourcing.
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2818
+Problem: No jump added to jumplist when opening terminal in current window.
+Solution: Call setpcmark(). (closes #8158)
+Files: src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.2819
+Problem: Finishing an abbreviation with a multi-byte char may not work.
+Solution: Escape K_SPECIAL in the typed character. (closes #8160)
+Files: src/map.c, src/testdir/test_mapping.vim
+
+Patch 8.2.2820
+Problem: Session file may divide by zero.
+Solution: Avoid writing divide by zero. (closes #8162)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.2821
+Problem: MS-Windows: unnecessarily loading libraries when registering OLE.
+Solution: Skip loading libraries when invoked with "-register".
+Files: src/main.c, src/globals.h, src/os_win32.c
+
+Patch 8.2.2822 (after 8.2.2821)
+Problem: MS-Windows: unnecessarily loading libraries when unregistering OLE.
+Solution: Also skip loading libraries when invoked with "-unregister". Run
+ Vim for README.txt with user privileges.
+Files: src/main.c, nsis/gvim.nsi, nsis/README.txt
+
+Patch 8.2.2823
+Problem: MS-Windows: launching Vim from installer doesn't open README.
+Solution: Adjust the quotes.
+Files: nsis/gvim.nsi
+
+Patch 8.2.2824
+Problem: MS-Windows: build failure with MSVC.
+Solution: Adjust the list of distributed files. Add hint about python.
+ Adjust path for reading runtime files.
+Files: Filelist, src/testdir/shared.vim,
+ src/testdir/test_function_lists.vim
+
+Patch 8.2.2825
+Problem: Code in checkreadonly() not fully tested.
+Solution: Add more tests. (Dominique Pellé, closes #8169)
+Files: src/testdir/test_excmd.vim
+
+Patch 8.2.2826
+Problem: Compiler warnings for int to size_t conversion. (Randall W.
+ Morris)
+Solution: Add type casts.
+Files: src/map.c, src/quickfix.c
+
+Patch 8.2.2827
+Problem: Test file was not deleted.
+Solution: Uncomment the delete() call. (Dominique Pellé, closes #8172)
+Files: src/testdir/test_mksession.vim
+
+Patch 8.2.2828
+Problem: Coverity complains about not checking the rename() return value.
+Solution: Add "(void)", can't do anything in case of a failure.
+Files: src/fileio.c
+
+Patch 8.2.2829
+Problem: Some comments are not correct or clear.
+Solution: Adjust the comments. Add test for cursor position.
+Files: src/regexp_bt.c, src/regexp_nfa.c,
+ src/testdir/test_exec_while_if.vim,
+ src/testdir/test_substitute.vim
+
+Patch 8.2.2830
+Problem: Terminal colors are not updated when 'background' is set.
+Solution: Call term_update_colors() for all terminals. (Marcin Szamotulski,
+ closes #8171, closes #8150)
+Files: src/terminal.c, src/proto/terminal.pro, src/optionstr.c
+
+Patch 8.2.2831
+Problem: Vim9: expandcmd() not tested.
+Solution: Add a test.
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2832
+Problem: Operator cancelled by moving mouse when using popup. (Sergey
+ Vlasov)
+Solution: Do not trigger an operator for a mouse move events. (closes #8176)
+Files: src/normal.c
+
+Patch 8.2.2833
+Problem: Two key command cancelled by moving mouse when using popup.
+ (Sergey Vlasov)
+Solution: Ignore K_MOUSEMOVE in plain_vgetc().
+Files: src/getchar.c
+
+Patch 8.2.2834
+Problem: Vim9: :cexpr does not work with local variables.
+Solution: Compile :cexpr.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/quickfix.c,
+ src/proto/quickfix.pro, src/testdir/test_quickfix.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2835 (after 8.2.2834)
+Problem: Vim9: leaking memory in :cexpr.
+Solution: Also free the command line copy.
+Files: src/vim9compile.c
+
+Patch 8.2.2836 (after 8.2.2834)
+Problem: Build failure without the +quickfix feature. (John Marriott)
+Solution: Add #ifdef.
+Files: src/vim9compile.c, src/vim9execute.c, src/tag.c
+
+Patch 8.2.2837
+Problem: Various code lines not covered by tests.
+Solution: Add test cases. (Dominique Pellé, closes #8178)
+Files: src/testdir/test_excmd.vim, src/testdir/test_functions.vim,
+ src/testdir/test_options.vim, src/testdir/test_startup.vim,
+ src/testdir/test_syntax.vim, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2838
+Problem: File extension .wrap not recognized.
+Solution: Use dosini filetype for .wrap files. (Liam Beguin, closes #8177)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2839
+Problem: Default redirection missing "ash" and "dash".
+Solution: Recognize "ash" and "dash". (Natanael Copa, closes #8180)
+Files: runtime/doc/options.txt, src/option.c
+
+Patch 8.2.2840
+Problem: Vim9: member operation not fully tested.
+Solution: Add a few tests.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2841
+Problem: MS-Windows: cursor in wrong position when 'lazyredraw' and
+ 'statusline' are set.
+Solution: Call compute_cmdrow(). (closes #8170, closes #8184)
+Files: src/os_win32.c
+
+Patch 8.2.2842
+Problem: Vim9: skip argument to searchpair() is not compiled.
+Solution: Add VAR_INSTR.
+Files: src/structs.h, src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/proto/vim9execute.pro, src/eval.c, src/evalfunc.c, src/vim.h,
+ src/evalvars.c, src/typval.c, src/vim9type.c, src/testing.c,
+ src/viminfo.c, src/if_py_both.h, src/json.c,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2843 (after 8.2.2842)
+Problem: Vim9: skip argument to searchpairpos() is not compiled.
+Solution: Handle like searchpair(). Also for search() and searchpos().
+Files: src/vim9compile.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2844
+Problem: Vim9: memory leak when using searchpair().
+Solution: Free the v_instr field.
+Files: src/typval.c
+
+Patch 8.2.2845
+Problem: MS-Windows: warning for signed/unsigned comparison.
+Solution: Add type cast.
+Files: src/terminal.c
+
+Patch 8.2.2846
+Problem: Vim9: "echo Func()" does not give an error for a function without
+ a return value.
+Solution: Give an error. Be more specific about why a value is invalid.
+Files: src/globals.h, src/errors.h, src/eval.c, src/evalfunc.c,
+ src/typval.c, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2847
+Problem: Perl not tested sufficiently.
+Solution: Add test. Also test W17. (Dominique Pellé, closes #8193)
+Files: src/testdir/test_arabic.vim, src/testdir/test_perl.vim
+
+Patch 8.2.2848
+Problem: Crash when calling partial.
+Solution: Check for NULL pointer. (Dominique Pellé, closes #8202)
+Files: src/eval.c, src/evalfunc.c, src/testdir/test_functions.vim,
+ src/testdir/test_listdict.vim
+
+Patch 8.2.2849
+Problem: Bufwrite not sufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8192)
+Files: src/testdir/test_startup.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.2850
+Problem: Recalling commands from history is not tested.
+Solution: Add tests. (closes #8194)
+Files: src/testdir/test_cmdline.vim
+
+Patch 8.2.2851
+Problem: Using <Cmd> mapping on the command line triggers CmdlineChanged.
+ (Naohiro Ono)
+Solution: Jump to cmdline_not_changed if the command line didn't change.
+ (closes #8208)
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.2852
+Problem: Configure can add --as-needed a second time.
+Solution: Only add --as-needed if not already there. (Natanael Copa,
+ closes #8189, closes #8181)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2853 (after 8.2.2851)
+Problem: Window is not updated after using <Cmd> mapping.
+Solution: So jump to cmdline_changed but skip autocommand.
+Files: src/ex_getln.c
+
+Patch 8.2.2854
+Problem: Custom statusline cannot contain % items.
+Solution: Add "%{% expr %}". (closes #8190)
+Files: runtime/doc/options.txt, src/buffer.c, src/optionstr.c,
+ src/testdir/test_statusline.vim
+
+Patch 8.2.2855
+Problem: White space after "->" does not give E274.
+Solution: Do not skip white space in legacy script. (closes #8212)
+Files: src/eval.c, src/testdir/test_method.vim
+
+Patch 8.2.2856
+Problem: Get readonly error for device that can't be written to.
+Solution: Check for being able to write first. (closes #8205)
+Files: src/ex_cmds.c, src/testdir/test_writefile.vim
+
+Patch 8.2.2857
+Problem: Vim9: exception in ISN_INSTR caught at wrong level.
+Solution: Set the starting trylevel in exec_instructions(). (closes #8214)
+Files: src/vim9compile.c, src/vim9execute.c, src/globals.h,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2858 (after 8.2.2857)
+Problem: Test fails because of changed error message.
+Solution: Adjust the expected error message.
+Files: src/testdir/test_ex_mode.vim
+
+Patch 8.2.2859 (after 8.2.2857)
+Problem: Tcl test fails because of changed error message.
+Solution: Adjust the expected error message.
+Files: src/testdir/test_tcl.vim
+
+Patch 8.2.2860
+Problem: Adding a text property causes the whole window to be redrawn.
+Solution: Use changed_lines_buf() to only redraw the affected lines.
+Files: src/change.c, src/proto/change.pro, src/textprop.c
+
+Patch 8.2.2861
+Problem: Vim9: "legacy return" is not recognized as a return statement.
+Solution: Specifically check for a return command. (closes #8213)
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2862
+Problem: Removing a text property causes the whole window to be redrawn.
+Solution: Use changed_lines_buf() to only redraw the affected lines.
+Files: src/textprop.c
+
+Patch 8.2.2863 (after 8.2.2862)
+Problem: Removing a text property does not redraw optimally.
+Solution: Only redraw the lines that mithg actually have been changed.
+Files: src/textprop.c
+
+Patch 8.2.2864
+Problem: Vim9: crash when using inline function.
+Solution: Check for NULL pointer. Make using inline function work inside
+ lambda. (closes #8217)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2865 (after 8.2.2864)
+Problem: Skipping over function body fails.
+Solution: Do not define the function when skipping.
+Files: src/userfunc.c
+
+Patch 8.2.2866
+Problem: Vim9: memory leak when using inline function.
+Solution: Remember what strings to free.
+Files: src/userfunc.c, src/structs.h, src/eval.c
+
+Patch 8.2.2867 (after 8.2.2866)
+Problem: Build failure.
+Solution: Add missing part of the change.
+Files: src/globals.h
+
+Patch 8.2.2868
+Problem: Vim9: When executing a compiled expression the trylevel at start
+ is changed but not restored. (closes #8214)
+Solution: Restore the trylevel at start.
+Files: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2869
+Problem: Using unified diff is not tested.
+Solution: Test all cases also with unified diff. (issue #8197)
+Files: src/testdir/test_diffmode.vim
+
+Patch 8.2.2870
+Problem: CmdlineChange event triggered twice for CTRL-R.
+Solution: Return CMDLINE_NOT_CHANGED from cmdline_insert_reg().
+ (closes #8219)
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.2871
+Problem: Unnecessary VIM_ISDIGIT() calls, badly indented code.
+Solution: Call skipdigits() on the next character. Improve indenting.
+ (Dominique Pellé, closes #8227)
+Files: src/charset.c, src/evalfunc.c, src/ex_docmd.c, src/json.c,
+ src/ops.c, src/tag.c, src/vim9compile.c
+
+Patch 8.2.2872
+Problem: Python tests fail without the channel feature.
+Solution: Add a feature check. (Dominique Pellé, closes #8226)
+Files: src/testdir/test_python2.vim, src/testdir/test_python3.vim
+
+Patch 8.2.2873
+Problem: Not enough tests for writing buffers.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8229)
+Files: src/testdir/test_buffer.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_functions.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.2874
+Problem: MS-Windows: screen redraws too often.
+Solution: Do not redraw when peeking for a character. (closes #8230,
+ closes #8211)
+Files: src/os_win32.c
+
+Patch 8.2.2875
+Problem: Cancelling inputlist() after a digit does not return zero.
+Solution: Always return zero when cancelling. (closes #8231)
+Files: src/misc1.c, src/testdir/test_functions.vim
+
+Patch 8.2.2876
+Problem: Configure cannot detect Python 3.10.
+Solution: Use sys.version_info. (closes #8233)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2877
+Problem: Insufficient tests for popup menu rightleft.
+Solution: Add tests. (Yegappan Lakshmanan, closes #8235)
+Files: src/testdir/test_popup.vim,
+ src/testdir/dumps/Test_pum_rightleft_01.dump,
+ src/testdir/dumps/Test_pum_rightleft_02.dump,
+ src/testdir/dumps/Test_pum_scrollbar_01.dump,
+ src/testdir/dumps/Test_pum_scrollbar_02.dump
+
+Patch 8.2.2878
+Problem: Vim9: for loop list unpack only allows for one "_".
+Solution: Drop the value when the variable is "_". (closes #8232)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2879
+Problem: File extension .hsig not recognized.
+Solution: Use Haskell filetype for .hsig files. (Marcin Szamotulski,
+ closes #8236)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2880
+Problem: Unified diff fails if actually used.
+Solution: Invoke :diffupdate in the test. Fix the check for working external
+ diff. (Ghjuvan Lacambre, Christian Brabandt, closes #8197)
+Files: src/diff.c, src/testdir/test_diffmode.vim
+
+Patch 8.2.2881
+Problem: Various pieces of code not covered by tests.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8245)
+Files: src/testdir/test_const.vim, src/testdir/test_functions.vim,
+ src/testdir/test_python2.vim, src/testdir/test_python3.vim,
+ src/testdir/test_user_func.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2882
+Problem: Vim9: memory leak when lambda has an error.
+Solution: Free the list of argument types on failure.
+Files: src/userfunc.c
+
+Patch 8.2.2883
+Problem: MS-Windows manifest file name is misleading.
+Solution: Rename the file. (closes #8241)
+Files: .gitignore, .hgignore, Filelist, Makefile, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/gvim.exe.mnf, src/vim.manifest, src/vim.rc
+
+Patch 8.2.2884
+Problem: Not enough cscope code is covered by tests.
+Solution: Add a few test cases. (Dominique Pellé, closes #8246)
+Files: src/testdir/test_cscope.vim
+
+Patch 8.2.2885
+Problem: searching for \%'> does not match linewise end of line. (Tim Chase)
+Solution: Match end of line if column is MAXCOL. (closes #8238)
+Files: src/regexp_nfa.c, src/regexp_bt.c, src/testdir/test_search.vim
+
+Patch 8.2.2886
+Problem: Various pieces of code not covered by tests.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8255)
+Files: src/testdir/test_expr.vim, src/testdir/test_functions.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_registers.vim,
+ src/testdir/test_user_func.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2887
+Problem: Crash when passing null string to fullcommand().
+Solution: Check for NULL pointer. (closes #8256)
+Files: src/ex_docmd.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.2888
+Problem: Vim9: "k" command recognized in Vim9 script.
+Solution: Do not recognize "k" or "s" and "d" with flags.
+Files: src/ex_docmd.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.2889
+Problem: Typo and verbose comment in Makefiles.
+Solution: Fix typo. Use @#. (Ken Takata, closes #8252)
+Files: Makefile, src/testdir/Makefile
+
+Patch 8.2.2890
+Problem: Text property duplicated when data block splits.
+Solution: Do not continue text prop from previous line. (closes #8261)
+Files: src/memline.c, src/structs.h, src/testdir/test_textprop.vim
+
+Patch 8.2.2891
+Problem: Cannot build with Perl 5.34.
+Solution: Add Perl_SvTRUE_common(). (Ozaki Kiichi, closes #8266,
+ closes #8250)
+Files: src/if_perl.xs
+
+Patch 8.2.2892
+Problem: Error message contains random characters.
+Solution: Pass the right pointer to error_white_both(). (closes #8272,
+ closes #8263)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2893
+Problem: Multi-byte text in popup title shows up wrong.
+Solution: Use the character width instead of the byte length. (Ralf Schandl,
+ closes #8267, closes #8264)
+Files: src/popupwin.c, src/message_test.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_multibytetitle.dump
+
+Patch 8.2.2894
+Problem: MS-Windows: using enc_locale() for strftime() might not work.
+Solution: Use wcsftime(). (Ken Takata, closes #8271)
+Files: src/time.c
+
+Patch 8.2.2895
+Problem: Vim9: random characters appear in some error messages.
+Solution: Pass the correct pointer. (closes #8277)
+Files: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2896
+Problem: Spellfile functionality not fully tested.
+Solution: Add tests for CHECKCOMPOUNDPATTERN and COMMON. (Dominique Pellé,
+ closes #8270)
+Files: src/testdir/test_spellfile.vim
+
+Patch 8.2.2897
+Problem: Vim9: can use reserved words at the script level.
+Solution: Check variable names for reserved words. (closes #8253)
+Files: src/vim9compile.c, src/vim9script.c, src/proto/vim9script.pro,
+ src/eval.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2898
+Problem: QuitPre and ExitPre not triggered when GUI window is closed.
+Solution: Call before_quit_autocmds(). (closes #8242)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/gui.c
+
+Patch 8.2.2899
+Problem: Appveyor script does not detect nmake failure.
+Solution: Explicitly check for executable. (Ken Takata, closes #8281)
+Files: ci/appveyor.bat
+
+Patch 8.2.2900
+Problem: QuitPre is triggered before :wq writes the file, which is
+ different from other commands.
+Solution: Trigger QuitPre after writing the file. (closes #8279)
+Files: src/ex_docmd.c, src/testdir/test_writefile.vim
+
+Patch 8.2.2901
+Problem: Some operators not fully tested.
+Solution: Add a few test cases. (Yegappan Lakshmanan, closes #8282)
+Files: src/testdir/test_cpoptions.vim, src/testdir/test_increment.vim,
+ src/testdir/test_normal.vim, src/testdir/test_virtualedit.vim,
+ src/testdir/test_visual.vim
+
+Patch 8.2.2902
+Problem: Spellfile functionality not fully tested.
+Solution: Add tests for CIRCUMFIX, NOBREAK and others. (Dominique Pellé,
+ closes #8283)
+Files: src/testdir/test_spellfile.vim
+
+Patch 8.2.2903
+Problem: Cursor position wrong on wrapped line with 'signcolumn'.
+Solution: Don't add space for showbreak twice. (Christian Brabandt,
+ closes #8262)
+Files: src/drawline.c, src/testdir/test_display.vim
+
+Patch 8.2.2904
+Problem: "g$" causes scroll if half a double width char is visible.
+Solution: Advance to the last fully visible character. (closes #8254)
+Files: src/normal.c, src/testdir/test_normal.vim
+
+Patch 8.2.2905
+Problem: No error when defaults.vim cannot be loaded.
+Solution: Add an error message. (Christian Brabandt, closes #8248)
+Files: runtime/doc/starting.txt, src/errors.h, src/main.c,
+ src/testdir/test_startup.vim
+
+Patch 8.2.2906 (after 8.2.2905)
+Problem: ASAN reports errors for test_startup for unknown reasons.
+Solution: Temporarily disable the new test.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.2907
+Problem: Memory leak when running out of memory.
+Solution: Free the allocated memory. (Dominique Pellé, closes #8284)
+Files: src/term.c
+
+Patch 8.2.2908
+Problem: Crash when using a terminal popup window from the cmdline window.
+Solution: Instead of checking cmdwin_type call cmdwin_is_active().
+ (closes #8286)
+Files: src/terminal.c, src/errors.h, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_cmdwin_no_terminal.dump
+
+Patch 8.2.2909
+Problem: Build error with non-Unix system.
+Solution: Always include limits.h.
+Files: src/vim.h
+
+Patch 8.2.2910
+Problem: Test for cmdline window and terminal fails on MS-Windows.
+Solution: Skip the test on MS-Windows.
+Files: src/testdir/test_cmdline.vim
+
+Patch 8.2.2911
+Problem: Pattern "\%V" does not match all of block selection. (Rick Howe)
+Solution: Use the value of vi_curswant. (closes #8285)
+Files: src/regexp.c, src/testdir/test_search.vim,
+ src/testdir/dumps/Test_hlsearch_block_visual_match.dump
+
+Patch 8.2.2912
+Problem: MS-Windows: most users expect using Unicode.
+Solution: Default 'encoding' to utf-8 on MS-Windows. (Ken Takata,
+ closes #3907)
+Files: runtime/doc/options.txt, src/mbyte.c, src/option.c, src/option.h,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.2913
+Problem: MS-Windows conpty supports using mouse events.
+Solution: When enabling the mouse enable mouse input and disable quick edit
+ mode. (Wez Furlong, closes #8280)
+Files: src/os_win32.c
+
+Patch 8.2.2914
+Problem: Cannot paste a block without adding padding.
+Solution: Add "zp" and "zP" which paste without adding padding. (Christian
+ Brabandt, closes #8289)
+Files: runtime/doc/change.txt, runtime/doc/index.txt, src/normal.c,
+ src/register.c, src/vim.h, src/testdir/test_normal.vim,
+ src/testdir/test_visual.vim
+
+Patch 8.2.2915
+Problem: MS-Windows: when using "default" for encoding utf-8 is used.
+Solution: Use the system encoding. (Ken Takata, closes #8300)
+Files: src/mbyte.c, runtime/doc/options.txt
+
+Patch 8.2.2916
+Problem: Operators are not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8290)
+Files: src/ops.c, src/testdir/test_netbeans.vim,
+ src/testdir/test_normal.vim, src/testdir/test_visual.vim
+
+Patch 8.2.2917
+Problem: Spellfile functionality not fully tested.
+Solution: Add tests for SFX with removal of characters, spelling
+ suggestions with NOBREAK and others. (Dominique Pellé,
+ closes #8293)
+Files: src/testdir/test_spellfile.vim
+
+Patch 8.2.2918
+Problem: Builtin function can be shadowed by global variable.
+Solution: Check for builtin function before variable. (Yasuhiro Matsumoto,
+ closes #8302)
+Files: src/eval.c, src/testdir/test_functions.vim
+
+Patch 8.2.2919
+Problem: Using ":!command" does not work if the command uses posix_spawn().
+Solution: Do not call ioctl() with TIOCSCTTY. (Felipe Contreras)
+Files: src/os_unix.c
+
+Patch 8.2.2920
+Problem: Still a way to shadow a builtin function. (Yasuhiro Matsumoto)
+Solution: Check the key when using extend(). (issue #8302)
+Files: src/eval.c, src/dict.c, src/proto/dict.pro,
+ src/testdir/test_functions.vim
+
+Patch 8.2.2921
+Problem: E704 for script local variable is not backwards compatible.
+ (Yasuhiro Matsumoto)
+Solution: Only give the error in Vim9 script. Also check for function-local
+ variable.
+Files: src/dict.c, src/testdir/test_functions.vim
+
+Patch 8.2.2922
+Problem: Computing array length is done in various ways.
+Solution: Use ARRAY_LENGTH everywhere. (Ken Takata, closes #8305)
+Files: src/arabic.c, src/blowfish.c, src/cindent.c, src/cmdexpand.c,
+ src/cmdhist.c, src/dosinst.c, src/eval.c, src/evalfunc.c,
+ src/ex_docmd.c, src/fileio.c, src/gui_athena.c, src/gui_gtk_x11.c,
+ src/gui_haiku.cc, src/gui_photon.c, src/gui_w32.c,
+ src/gui_xmebw.c, src/hardcopy.c, src/help.c, src/highlight.c,
+ src/if_mzsch.c, src/macros.h, src/main.c, src/map.c, src/mbyte.c,
+ src/memline.c, src/menu.c, src/misc2.c, src/normal.c, src/ops.c,
+ src/option.c, src/optiondefs.h, src/os_win32.c, src/popupwin.c,
+ src/quickfix.c, src/regexp.c, src/screen.c, src/search.c,
+ src/syntax.c, src/term.c, src/terminal.c, src/time.c,
+ src/usercmd.c, src/version.c
+
+Patch 8.2.2923
+Problem: EBCDIC build is broken.
+Solution: Move sortFunctions() to evalfunc.c. (Ken Takata, closes #8306)
+Files: src/eval.c, src/evalfunc.c, src/proto/evalfunc.pro
+
+Patch 8.2.2924
+Problem: Superfluous extern declaration.
+Solution: Delete the declaration. (Ken Takata, closes #8307)
+Files: src/main.c
+
+Patch 8.2.2925
+Problem: Vim9: line continuation comment uses legacy syntax.
+Solution: Check for #\ instead of "\. (closes #8295)
+Files: src/scriptfile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2926
+Problem: Vim9: no good error for using :legacy in a :def function.
+Solution: Give an explicit error where :legacy is not working.
+ (closes #8309)
+Files: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2927
+Problem: Test commented out because it fails with ASAN.
+Solution: Only skip the test when running with ASAN.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.2928
+Problem: The evalfunc.c file is too big.
+Solution: Move float related functionality to a separate file. (Yegappan
+ Lakshmanan, closes #8287)
+Files: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/eval.c, src/evalfunc.c, src/float.c, src/proto.h,
+ src/proto/eval.pro, src/proto/float.pro
+
+Patch 8.2.2929
+Problem: Accidentally enable tcl by default.
+Solution: Revert change to Makefile
+Files: src/Makefile
+
+Patch 8.2.2930
+Problem: When a popup is visible a mouse move my restart Visual mode.
+Solution: Reset held_button when ending Visual mode. (closes #8318)
+Files: src/mouse.c, src/proto/mouse.pro, src/normal.c
+
+Patch 8.2.2931
+Problem: Vim9: line continuation comment still uses legacy syntax in one
+ place.
+Solution: Check for #\ instead of "\ earlier. (closes #8316)
+Files: src/scriptfile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.2932 (after 8.2.2930)
+Problem: Select mode test fails.
+Solution: Do not always reset the held mouse button.
+Files: src/mouse.c, src/normal.c, src/proto/normal.pro
+
+Patch 8.2.2933
+Problem: When 'clipboard' is "unnamed" zp and zP do not work correctly.
+Solution: Pass -1 to str_to_reg() and fix computing the character width
+ instead of using the byte length. (Christian Brabandt,
+ closes #8301, closes #8317)
+Files: src/clipboard.c, src/mbyte.c, src/register.c
+
+Patch 8.2.2934 (after 8.2.2933)
+Problem: ASAN error when using text from the clipboard.
+Solution: Get width of each character.
+Files: src/register.c
+
+Patch 8.2.2935 (after 8.2.2934)
+Problem: Calculating register width is not always needed. (Christian
+ Brabandt)
+Solution: Only calculate the width when the type is MBLOCK.
+Files: src/register.c
+
+Patch 8.2.2936
+Problem: Vim9: converting number to bool uses wrong stack offset. (Salman
+ Halim)
+Solution: Include the offset in the 2BOOL command.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2937
+Problem: Popup test fails if rightleft feature not enabled.
+Solution: Check that the rightleft feature is available. (Dominique Pellé,
+ closes #8321)
+Files: src/testdir/test_popup.vim
+
+Patch 8.2.2938
+Problem: After using motion force from feedkeys() it may not be reset.
+Solution: Clear motion_force in clearop(). (closes #8323)
+Files: src/normal.c, src/testdir/test_visual.vim
+
+Patch 8.2.2939
+Problem: GTK: righthand scrollbar does not show with split window.
+Solution: Adjust padding when two scrollbars are used. (Matt Wozniski,
+ closes #8324)
+Files: src/gui_gtk.c
+
+Patch 8.2.2940
+Problem: MS-Windows: cannot see the size of the text area when resizing the
+ gvim window.
+Solution: Show a tooltip with the text size. (Ken Takata, closes #8326)
+Files: src/gui_w32.c
+
+Patch 8.2.2941
+Problem: Vim9: using `=expr` does not handle a list of strings.
+Solution: Convert a list to a string and escape each item. (closes #8310)
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2942
+Problem: Vim9: internal error when calling function with too few arguments
+Solution: Check for argument count to be too few. (closes #8325)
+Files: src/errors.h, src/vim9execute.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2943
+Problem: Vim9: check for argument count ignores default values.
+Solution: Take default argument values into account.
+Files: src/vim9execute.c
+
+Patch 8.2.2944
+Problem: Vim9: no error when using job or channel as a string.
+Solution: Be more strict about conversion to string. (closes #8312)
+Files: src/typval.c, src/job.c, src/proto/job.pro, src/channel.c,
+ src/proto/channel.pro, src/eval.c, src/vim9execute.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.2945
+Problem: Some buffer related code is not tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8320)
+Files: src/termlib.c, src/testdir/test_excmd.vim,
+ src/testdir/test_recover.vim, src/testdir/test_swap.vim,
+ src/testdir/test_visual.vim
+
+Patch 8.2.2946
+Problem: Vim9: substitute expression cannot be a List in a :def function.
+Solution: Use typval2string(). (closes #8330)
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2947
+Problem: Build failure without the channel feature.
+Solution: Add back #ifdef. (John Marriott)
+Files: src/eval.c
+
+Patch 8.2.2948
+Problem: Substitute() accepts a number but not a float expression.
+Solution: Also accept a float. (closes #8331)
+Files: src/typval.c, src/testdir/test_substitute.vim
+
+Patch 8.2.2949 (after 8.2.2948)
+Problem: Tests failing because there is no error for float to string
+ conversion.
+Solution: Change the check for failure to check for correct result. Make
+ some conversions strict in Vim9 script.
+Files: src/evalfunc.c, src/float.c, src/findfile.c, src/json.c,
+ src/filepath.c, src/testdir/test_eval_stuff.vim,
+ src/testdir/test_execute_func.vim,
+ src/testdir/test_float_func.vim, src/testdir/test_functions.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_glob2regpat.vim
+
+Patch 8.2.2950
+Problem: Sound code not fully tested.
+Solution: Add more sound tests. (Dominique Pellé, closes #8332)
+Files: src/testdir/test_sound.vim
+
+Patch 8.2.2951
+Problem: Vim9: cannot use heredoc in :def function for :python, :lua, etc.
+Solution: Concatenate the heredoc lines and pass them in the ISN_EXEC_SPLIT
+ instruction.
+Files: src/userfunc.c, src/vim9compile.c, src/vim9.h, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2952
+Problem: Recover test fails on big endian systems.
+Solution: Disable the failing test on big endian systems. (Yegappan
+ Lakshmanan, closes #8335)
+Files: src/testdir/test_recover.vim, src/testdir/test_swap.vim
+
+Patch 8.2.2953 (after 8.2.2951)
+Problem: Vim9: leaking memory when using heredoc script.
+Solution: Free the first line.
+Files: src/vim9execute.c
+
+Patch 8.2.2954
+Problem: Short file name extension for Scala not recognized.
+Solution: Recognize *.sc. (closes #8337)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2955
+Problem: Vim9: using filter in compiled command does not work.
+Solution: Generate EXEC including the command modifier.
+Files: src/vim9compile.c, src/ex_docmd.c, src/ex_cmds.c,
+ src/proto/ex_cmds.pro, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.2956
+Problem: Vim9: need to plan for future additions.
+Solution: Reserve commands for future use: :type, :class, :enum.
+Files: src/ex_cmds.h, src/ex_cmdidxs.h
+
+Patch 8.2.2957
+Problem: Using getchar() in Vim9 script is problematic.
+Solution: Add getcharstr(). (closes #8343)
+Files: runtime/doc/eval.txt, src/evalfunc.c, src/getchar.c,
+ src/proto/getchar.pro, src/testdir/test_functions.vim
+
+Patch 8.2.2958 (after 8.2.2957)
+Problem: Function list test fails.
+Solution: Add newly added function to the list. Fix typo.
+Files: runtime/doc/usr_41.txt, src/testdir/test_function_lists.vim
+
+Patch 8.2.2959
+Problem: sound_playfile() is not tested on MS-Windows.
+Solution: Make it work and enable the test. (Dominique Pellé, closes #8338)
+Files: src/sound.c, src/testdir/test_sound.vim
+
+Patch 8.2.2960
+Problem: Swap file recovery not sufficiently tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8339)
+Files: src/testdir/test_recover.vim
+
+Patch 8.2.2961
+Problem: Keys typed during a :normal command are discarded.
+Solution: Concatenate saved typeahead and typed keys. (closes #8340)
+Files: src/getchar.c, src/proto/getchar.pro, src/ex_docmd.c,
+ src/evalfunc.c, src/debugger.c, src/ui.c, src/proto/ui.pro
+
+Patch 8.2.2962
+Problem: MS-Windows command line arguments have wrong encoding.
+Solution: Always use utf-8 in get_cmd_argsW(). (Ken Takata, closes #8347)
+Files: src/os_win32.c
+
+Patch 8.2.2963
+Problem: GUI: mouse move may start Visual mode with a popup visible.
+Solution: Add special code for mouse move. (closes #8318)
+Files: src/vim.h, src/gui.c, src/keymap.h, src/term.c
+
+Patch 8.2.2964
+Problem: Vim9: hang when using space after ->. (Naohiro Ono)
+Solution: Skip over white space to find the function name. (closes #8341)
+Files: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.2965
+Problem: Vim9: crash when calling function that failed to compile.
+Solution: Fail when trying to call the function. (closes #8344)
+Files: src/errors.h, src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2966
+Problem: ml_get errors after recovering a file. (Yegappan Lakshmanan)
+Solution: Fix the cursor position after deleting lines.
+Files: src/memline.c
+
+Patch 8.2.2967
+Problem: Vim9: crash when using two levels of partials.
+Solution: Add outer_ref_T and use it in the execution context.
+Files: src/structs.h, src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.2968 (after 8.2.2967)
+Problem: Vim9: memory leak
+Solution: Unreference pt_outer of partial.
+Files: src/eval.c
+
+Patch 8.2.2969
+Problem: Subtracting from number option fails when result is zero. (Ingo
+ Karkat)
+Solution: Reset the string value when using the numeric value.
+ (closes #8351)
+Files: src/evalvars.c, src/testdir/test_vimscript.vim
+
+Patch 8.2.2970
+Problem: Python configure check uses deprecated command.
+Solution: Use sysconfig instead of distutils if possible. (Zdenek Dohnal,
+ closes #8354)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.2971
+Problem: Cannot yank a block without trailing spaces.
+Solution: Add the "zy" command. (Christian Brabandt, closes #8292)
+Files: runtime/doc/change.txt, runtime/doc/index.txt, src/normal.c,
+ src/ops.c, src/register.c, src/structs.h,
+ src/testdir/test_visual.vim
+
+Patch 8.2.2972
+Problem: "%bd" tries to delete popup window buffers, which fails. (Ralf
+ Schandl)
+Solution: Do not try to delete a popup window buffer. (closes #8349)
+Files: src/buffer.c, src/vim.h, src/testdir/test_popupwin.vim
+
+Patch 8.2.2973
+Problem: Fix for recovery and diff mode not tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8352)
+Files: src/testdir/test_diffmode.vim, src/testdir/test_prompt_buffer.vim,
+ src/testdir/test_recover.vim
+
+Patch 8.2.2974
+Problem: Greek spell checking uses wrong case folding.
+Solution: Fold capital sigma depending on whether it is at the end of a
+ word or not. (closes #299)
+Files: src/spell.c, src/proto/spell.pro, src/spellfile.c,
+ src/spellsuggest.c
+
+Patch 8.2.2975
+Problem: Vim9: can only use an autoload function name as a string.
+Solution: Load the autoload script when encountered. (closes #8124)
+Files: src/vim9compile.c, src/evalvars.c, src/scriptfile.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2976 (after 8.2.2975)
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdefs.
+Files: src/scriptfile.c
+
+Patch 8.2.2977
+Problem: Crash when using a null function reference. (Naohiro Ono)
+Solution: Check for an invalid function name. (closes #8367)
+Files: src/eval.c, src/errors.h, src/testdir/test_functions.vim
+
+Patch 8.2.2978 (after 8.2.2977)
+Problem: Warning for uninitialized variable.
+Solution: Set return value to FAIL.
+Files: src/eval.c
+
+Patch 8.2.2979
+Problem: Not all options code is covered by tests.
+Solution: Add more tests for options. (Yegappan Lakshmanan, closes #8369)
+Files: src/testdir/test_edit.vim, src/testdir/test_excmd.vim,
+ src/testdir/test_help.vim, src/testdir/test_mksession.vim,
+ src/testdir/test_options.vim, src/testdir/test_vartabs.vim,
+ src/testdir/test_window_cmd.vim
+
+Patch 8.2.2980
+Problem: Popup window test is a bit flaky.
+Solution: Add a redraw command.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.2981
+Problem: Recovery test is not run on big-endian systems.
+Solution: Make it work on big-endian systems. (James McCoy, closes #8368)
+Files: src/testdir/test_recover.vim
+
+Patch 8.2.2982
+Problem: Vim9: future commands are not reserved yet.
+Solution: Add commands to be implemented later. Make "this" a reserved
+ name.
+Files: runtime/doc/vim9.txt, src/ex_cmds.h, src/ex_cmdidxs.h,
+ src/vim9script.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.2983
+Problem: Vim9: an inline function requires specifying the return type.
+Solution: Make the return type optional.
+Files: src/eval.c, src/vim9compile.c, src/userfunc.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.2984 (after 8.2.2983)
+Problem: Vim9: Test fails because of missing return statement.
+Solution: When type is unknown set type to void.
+Files: src/vim9compile.c
+
+Patch 8.2.2985
+Problem: Vim9: a compiled function cannot be debugged.
+Solution: Add initial debugging support.
+Files: src/vim9.h, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/vim.h, src/eval.c, src/vim9execute.c, src/userfunc.c,
+ src/vim9type.c, src/testdir/test_debugger.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2986
+Problem: Build failure without the profile feature.
+Solution: Add #ifdef.
+Files: src/vim9compile.c
+
+Patch 8.2.2987
+Problem: Build failure with normal features.
+Solution: Remove #define.
+Files: src/vim9execute.c
+
+Patch 8.2.2988
+Problem: Vim9: debugger test fails.
+Solution: Get the debugger instructions when needed.
+Files: src/vim.h, src/vim9.h
+
+Patch 8.2.2989
+Problem: Vim9: memory leak when debugging a :def function.
+Solution: Free the debug instructions.
+Files: src/vim9compile.c
+
+Patch 8.2.2990
+Problem: Jupyter Notebook files are not recognized.
+Solution: Recognize *.ipynb. (closes #8375)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.2991
+Problem: Vim9: no completion for :vim9 and :legacy.
+Solution: Expand argument as a command. (closes #8377)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.2992
+Problem: Vim9: completion for :disassemble is incomplete.
+Solution: Recognize the "debug" and "profile" arguments.
+Files: src/cmdexpand.c, src/vim9execute.c, src/proto/vim9execute.pro,
+ src/vim.h, src/testdir/test_cmdline.vim
+
+Patch 8.2.2993
+Problem: 'fileencodings' default value should depend on 'encoding'. (Gary
+ Johnson)
+Solution: When 'encoding' is "utf-8" use a different default value for
+ 'fileencodings'.
+Files: src/mbyte.c, src/option.c, src/proto/option.pro,
+ src/testdir/test_options.vim
+
+Patch 8.2.2994
+Problem: Various code is not fully tested.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8378)
+Files: src/testdir/test_excmd.vim, src/testdir/test_mapping.vim,
+ src/testdir/test_modeline.vim, src/testdir/test_options.vim,
+ src/testdir/test_paste.vim, src/vim9compile.c
+
+Patch 8.2.2995
+Problem: Linker errors with dynamic Python 3.10.
+Solution: Add a couple of library entries. (Zdenek Dohnal, closes #8381,
+ closes #8356)
+Files: src/if_python3.c
+
+Patch 8.2.2996
+Problem: Vim9: when debugging cannot inspect local variables.
+Solution: Make local variables available when debugging.
+Files: src/vim9execute.c, src/proto/vim9execute.pro, src/vim9compile.c,
+ src/vim9.h, src/debugger.c, src/testdir/test_debugger.vim
+
+Patch 8.2.2997 (after 8.2 2996)
+Problem: Vim9: disassemble test fails.
+Solution: Adjust expected output.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.2998 (after 8.2 2996)
+Problem: Vim9: disassemble test fails.
+Solution: Add missing call to lookup_debug_var().
+Files: src/evalvars.c
+
+Patch 8.2.2999
+Problem: Balloon sometimes does not hide with GTK 3.
+Solution: Also listen to GDK_LEAVE_NOTIFY. (Johannes Stezenbach)
+Files: src/gui_beval.c
+
+Patch 8.2.3000
+Problem: Vim9: warning for uninitialized variable.
+Solution: Add initialization. (John Marriott)
+Files: src/vim9compile.c
+
+Patch 8.2.3001
+Problem: Vim9: memory leak when compilation fails.
+Solution: Free the list of variable names.
+Files: src/vim9compile.c
+
+Patch 8.2.3002
+Problem: Vim doesn't abort on a fatal Tcl error.
+Solution: Change emsg() to iemsg(). (Dominique Pellé, closes #8383)
+Files: src/if_tcl.c
+
+Patch 8.2.3003
+Problem: Vim9: closure compiled with wrong compile type.
+Solution: Use COMPILE_TYPE() when calling a function. (closes #8384)
+Files: src/vim9execute.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3004
+Problem: Vim9: error for missing colon given while skipping.
+Solution: Do not give the error when skipping. (closes #8385)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3005
+Problem: Vim9: using a void value does not give a proper error message.
+Solution: Give a clear error message. (closes #8387)
+Files: src/typval.c, src/vim9compile.c, src/vim9.h, src/vim9execute.c,
+ src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3006
+Problem: Crash when echoing a value very early. (Naruhiko Nishino)
+Solution: Do not use a NUL to truncate the message, make a copy.
+ (closes #8388)
+Files: src/message.c, src/testdir/test_startup.vim
+
+Patch 8.2.3007 (after 8.2.3005)
+Problem: Vim9: test for void value fails.
+Solution: Adjust expected error. Do not make a copy of void.
+Files: src/typval.c, src/testdir/test_functions.vim
+
+Patch 8.2.3008 (after 8.2.3006)
+Problem: Startup test may hang.
+Solution: Add quit command in the script.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.3009 (after 8.2.3006)
+Problem: Startup test may hang.
+Solution: Do not run the test in the GUI.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.3010
+Problem: Not enough testing for viminfo code.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8390)
+Files: src/register.c, src/testdir/test_fileformat.vim,
+ src/testdir/test_smartindent.vim, src/testdir/test_viminfo.vim
+
+Patch 8.2.3011
+Problem: Vim9: cannot get argument values during debugging.
+Solution: Lookup names in the list of arguments. Put debug instruction
+ halfway for command.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_debugger.vim
+
+Patch 8.2.3012
+Problem: When 'rightleft' is set the line number is sometimes drawn
+ reversed.
+Solution: Adjust how space is handled. (Christian Brabandt, closes #8389,
+ closes #8391)
+Files: src/drawline.c, src/testdir/test_number.vim
+
+Patch 8.2.3013
+Problem: Vim: when debugging only the first line of a command using line
+ continuation is displayed.
+Solution: Find the next command and concatenate lines until that one.
+ (closes #8392)
+Files: src/vim9execute.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3014
+Problem: Coverity warns for freeing static string.
+Solution: Do not assign static string to pointer. (Dominique Pellé,
+ closes #8397)
+Files: src/vim9execute.c
+
+Patch 8.2.3015
+Problem: Vim9: Assigning to @# requires a string. (Naohiro Ono)
+Solution: Accent a number or a string. (closes #8396)
+Files: src/vim9compile.c, src/vim9execute.c, src/globals.h,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3016
+Problem: Confusing error when expression is followed by comma.
+Solution: Give a different error for trailing text. (closes #8395)
+Files: src/eval.c, src/testdir/test_let.vim,
+ src/testdir/test_eval_stuff.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_viminfo.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.3017
+Problem: Vim9: debugger shows too many lines.
+Solution: Truncate at a comment, "enddef", etc. (closes #8392)
+Files: src/vim9execute.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3018
+Problem: Formatting using quickfixtextfunc is lost when updating location
+ lists for different buffers. (Yorick Peterse)
+Solution: Use the right window for the location list. (Yegappan Lakshmanan,
+ closes #8400, closes #8403)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.3019
+Problem: Location list only has the start position.
+Solution: Make it possible to add an end position. (thinca, closes #8393)
+Files: runtime/doc/eval.txt, src/quickfix.c,
+ src/testdir/dumps/Test_quickfix_cwindow_1.dump,
+ src/testdir/dumps/Test_quickfix_cwindow_2.dump,
+ src/testdir/test_quickfix.vim, src/testdir/test_tagjump.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3020
+Problem: Unreachable code.
+Solution: Remove the code. (closes #8406)
+Files: src/ex_docmd.c
+
+Patch 8.2.3021
+Problem: Spaces allowed between option name and "!", "?", etc.
+Solution: Disallow spaces in Vim9 script, it was not documented.
+ (closes #8408)
+Files: src/option.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3022
+Problem: Available encryption methods are not strong enough.
+Solution: Add initial support for xchacha20. (Christian Brabandt,
+ closes #8394)
+Files: .github/workflows/ci.yml, runtime/doc/eval.txt,
+ runtime/doc/options.txt, runtime/doc/various.txt,
+ src/INSTALLpc.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
+ src/auto/configure, src/blowfish.c, src/bufwrite.c,
+ src/config.h.in, src/configure.ac, src/crypt.c, src/crypt_zip.c,
+ src/errors.h, src/evalfunc.c, src/feature.h, src/fileio.c,
+ src/memline.c, src/option.c, src/optionstr.c,
+ src/proto/blowfish.pro, src/proto/crypt.pro,
+ src/proto/crypt_zip.pro, src/structs.h,
+ src/testdir/samples/crypt_sodium_invalid.txt,
+ src/testdir/test_crypt.vim, src/undo.c, src/version.c
+
+Patch 8.2.3023
+Problem: Vim9: arguments for execute() not checked at compile time.
+Solution: Add a function to check the argument types.
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3024 (after 8.2.3023)
+Problem: execute() function test fails.
+Solution: Adjust test for different error.
+Files: src/testdir/test_execute_func.vim
+
+Patch 8.2.3025
+Problem: Not enough tests for quickfix end_col and end_lnum.
+Solution: Add a few more test cases. (Shane-XB-Qian, closes #8409)
+Files: src/testdir/test_quickfix.vim
+
+Patch 8.2.3026
+Problem: Vim9: cannot set breakpoint in compiled function.
+Solution: Check for breakpoint when calling a function.
+Files: src/vim9execute.c, src/structs.h, src/vim.h, src/vim9.h,
+ src/debugger.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3027
+Problem: Vim9: breakpoint in compiled function not always checked.
+Solution: Check for breakpoint when calling compiled function from compiled
+ function.
+Files: src/vim9execute.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3028
+Problem: GUI mouse events not tested.
+Solution: Add test_gui_mouse_event(). Add mouse tests. Also add a few
+ viminfo tests. (Yegappan Lakshmanan, closes #8407)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/testing.pro,
+ src/testdir/test_gui.vim, src/testdir/test_viminfo.vim,
+ src/testing.c
+
+Patch 8.2.3029
+Problem: Vim9: crash when using operator and list unpack assignment.
+ (Naohiro Ono)
+Solution: Get variable value before operation. (closes #8416)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, src/ex_docmd.c,
+ src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3030
+Problem: Coverity reports a memory leak.
+Solution: Fix the leak and a few typos. (Dominique Pellé, closes #8418)
+Files: src/crypt.c, src/errors.h
+
+Patch 8.2.3031
+Problem: No error if a function name starts with an underscore. (Naohiro
+ Ono)
+Solution: In Vim9 script disallow a function name starting with an
+ underscore, as is mentioned in the help. (closes #8414)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3032
+Problem: Build problems with MSVC, other crypt issues with libsodium.
+Solution: Adjust MSVC makefile. Disable swap file only when 'key' is set.
+ Adjust error message used when key is wrong. Fix Coverity issues.
+ (Christian Brabandt, closes #8420, closes #8411)
+Files: src/Make_mvc.mak, src/crypt.c, src/errors.h, src/fileio.c,
+ src/memline.c, src/proto/crypt.pro
+
+Patch 8.2.3033
+Problem: No error when using alpha delimiter with :global.
+Solution: Check the delimiter like with :substitute. (closes #8415)
+Files: src/ex_cmds.c, src/testdir/test_global.vim
+
+Patch 8.2.3034
+Problem: Installing packages on github CI sometimes fails.
+Solution: Update package information first. (Christian Brabandt,
+ closes #8432)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3035
+Problem: Vim9: crash when calling :def function with partial and return
+ type is not set.
+Solution: When the return type is not set handle like the return type is
+ unknown. (closes #8422)
+Files: src/vim9type.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3036
+Problem: Vim9: builtin function arguments not checked at compile time.
+Solution: Add more argument type specs. Check arguments to test_setmouse()
+ and test_gui_mouse_event(). (Yegappan Lakshmanan, closes #8425)
+Files: src/evalfunc.c, src/testdir/test_assert.vim,
+ src/testdir/test_gui.vim, src/testdir/test_popupwin.vim,
+ src/testdir/test_vim9_builtin.vim, src/testing.c
+
+Patch 8.2.3037
+Problem: Configure reports libcanberra when checking for libsodium.
+Solution: Adjust the message. (Ozaki Kiichi, closes #8435)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.3038
+Problem: Amiga built-in version string doesn't include build date.
+Solution: Add the build date if available. (Ola Söder, closes #8437)
+Files: src/os_amiga.c
+
+Patch 8.2.3039
+Problem: Vim9: breakpoint at a comment line does not work.
+Solution: Add the comment line number to the debug instruction.
+ (closes #8429)
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_debugger.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3040
+Problem: GUI: dropping files not tested.
+Solution: Add test_gui_drop_files() and tests. (Yegappan Lakshmanan,
+ closes #8434)
+Files: runtime/doc/eval.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/gui.c,
+ src/proto/testing.pro, src/testdir/test_gui.vim, src/testing.c
+
+Patch 8.2.3041
+Problem: Detecting if the process of a swap file is running fails if the
+ process is owned by another user.
+Solution: Check for the ESRCH error. (closes #8436)
+Files: src/os_unix.c
+
+Patch 8.2.3042 (after 8.2.3041)
+Problem: Swap file test fails.
+Solution: Check for a very high process ID instead of one, which should be
+ running.
+Files: src/testdir/test_swap.vim
+
+Patch 8.2.3043
+Problem: Amiga: cannot get the shell size on MorphOS and AROS.
+Solution: Use control sequences. (Ola Söder, closes #8438)
+Files: src/os_amiga.c
+
+Patch 8.2.3044
+Problem: Amiga MorphOS and AROS: process ID is not valid.
+Solution: Use FindTask to return something which is unique to all processes.
+ (Ola Söder, closes #8444)
+Files: src/os_amiga.c
+
+Patch 8.2.3045
+Problem: Minor typos.
+Solution: Fix the typos. (Christian Brabandt, closes #8441)
+Files: src/VisVim/README_VisVim.txt, src/evalfunc.c, src/testdir/vim9.vim
+
+Patch 8.2.3046
+Problem: Amiga MorphOS: Term mode is set using DOS packets.
+Solution: Use the same way of setting term mode on all next gen Amiga-like
+ systems. (Ola Söder, closes #8445)
+Files: src/os_amiga.c
+
+Patch 8.2.3047
+Problem: Increment and decrement don't allow for next command.
+Solution: Allow for comment and next command. (closes #8442)
+Files: src/ex_cmds.h, src/vim9script.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3048
+Problem: Strange error for white space after ++ command.
+Solution: Check for white space explicitly. (closes #8440)
+Files: src/vim9script.c, src/errors.h, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3049
+Problem: JSON patch file not recognized.
+Solution: Recognize json-patch as json. (Kevin Locke, closes #8450)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3050
+Problem: Cannot recognize elixir files.
+Solution: Recognize Elixir-specific files. Check if an .ex file is Euphoria
+ or Elixir. (Austin Gatlin, closes #8401, closes #8446)
+Files: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.3051
+Problem: Vim9: for loop with one list variable does not work.
+Solution: Use a separate flag for unpacking a list. (closes #8452)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3052
+Problem: Vim9: "legacy call" does not work.
+Solution: Do not skip "call" after "legacy". (closes #8454)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3053
+Problem: Vim9: cannot assign to @@ in :def function
+Solution: Handle '@' like '"'. (closes #8456)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3054
+Problem: Vim9: unpack assignment using "_" after semicolon fails.
+Solution: Drop the expression result. (closes #8453)
+Files: src/vim9compile.c, src/errors.h, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3055
+Problem: Strange error for assigning to "x.key" on non-dictionary.
+Solution: Add a specific error message. (closes #8451)
+Files: src/eval.c, src/errors.h, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_let.vim
+
+Patch 8.2.3056
+Problem: Vim9: using default value in lambda gives confusing error.
+Solution: Pass "default_args" on the first pass to get the arguments.
+ (closes #8455)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3057
+Problem: Vim9: debugger test fails with normal features and +terminal.
+ (Dominique Pellé)
+Solution: Adjust the INSTRUCTIONS macro. (closes #8460)
+Files: src/vim9.h
+
+Patch 8.2.3058 (after 8.2.3056)
+Problem: Vim9: cannot use ternary operator in parentheses.
+Solution: Do not use "==" for a default argument value. (closes #8462)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3059 (after 8.2.3056)
+Problem: Vim9: memory leak when using lambda.
+Solution: Do not store the default value strings when skipping.
+Files: src/userfunc.c
+
+Patch 8.2.3060 (after 8.2.3056)
+Problem: Vim9: cannot use ternary operator in parentheses.
+Solution: Do not use "=~" for a default argument value. (closes #8462)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3061
+Problem: Testing the shell option is incomplete and spread out.
+Solution: Move shell tests to one file and increase coverage. (Yegappan
+ Lakshmanan, closes #8464)
+Files: src/testdir/Make_all.mak, src/testdir/test_functions.vim,
+ src/testdir/test_options.vim, src/testdir/test_shell.vim,
+ src/testdir/test_system.vim
+
+Patch 8.2.3062
+Problem: Internal error when adding several text properties.
+Solution: Do not handle text properties when deleting a line for splitting a
+ data block. (closes #8466)
+Files: src/structs.h, src/memline.c, src/testdir/test_textprop.vim
+
+Patch 8.2.3063
+Problem: Crash when switching 'cryptmethod' to xchacha20 with an existing
+ undo file. (Martin Tournoij)
+Solution: Disable reading undo file when decoding can't be done inplace.
+ (issue #8467)
+Files: src/fileio.c, src/bufwrite.c
+
+Patch 8.2.3064
+Problem: Vim9: in script cannot set item in uninitialized list.
+Solution: When a list is NULL allocate an empty one. (closes #8461)
+Files: src/eval.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3065
+Problem: Vim9: error when sourcing script twice and reusing a function
+ name.
+Solution: Check if the function is dead. (closes #8463)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3066
+Problem: Vim9: debugging lambda does not work.
+Solution: Use the compile type of the function when compiling a lambda.
+ (closes #8412)
+Files: src/vim9compile.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3067
+Problem: Building fails with Athena. (Elimar Riesebieter)
+Solution: Adjust #ifdefs and add the 'drop_file' feature.
+Files: src/evalfunc.c, src/testing.c, src/testdir/test_gui.vim
+
+Patch 8.2.3068
+Problem: Unicode tables are slightly outdated.
+Solution: Update the tables for Unicode release 13. (Christian Brabandt
+ closes #8430)
+Files: runtime/tools/unicode.vim, src/mbyte.c
+
+Patch 8.2.3069
+Problem: Error messages are spread out.
+Solution: Move some error messages to errors.h. Use clearer names.
+Files: src/errors.h, src/globals.h, src/arglist.c, src/buffer.c,
+ src/channel.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
+ src/evalwindow.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
+ src/filepath.c, src/fold.c, src/getchar.c, src/indent.c,
+ src/list.c, src/map.c, src/mark.c, src/normal.c, src/ops.c,
+ src/optionstr.c, src/popupwin.c, src/quickfix.c, src/spellfile.c,
+ src/textprop.c, src/typval.c, src/undo.c, src/userfunc.c,
+ src/vim9compile.c, src/window.c
+
+Patch 8.2.3070
+Problem: Not enough testing for shell use.
+Solution: Add a bit more testing. (Yegappan Lakshmanan, closes #8469)
+Files: src/testdir/test_shell.vim, src/testdir/test_startup.vim
+
+Patch 8.2.3071
+Problem: Shell options are not set properly for PowerShell.
+Solution: Use better option defaults. (Mike Williams, closes #8459)
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/os_dos.txt, src/fileio.c, src/misc2.c, src/option.c,
+ src/os_win32.c, src/testdir/test_shell.vim
+
+Patch 8.2.3072
+Problem: The "zy" command does not work well when 'virtualedit' is set to
+ "block". (Johann Höchtl)
+Solution: Make endspaces zero. (Christian Brabandt, closes #8468,
+ closes #8448)
+Files: src/register.c, src/testdir/test_visual.vim
+
+Patch 8.2.3073
+Problem: When cursor is moved for block append wrong text is inserted.
+Solution: Calculate an offset. (Christian Brabandt, closes #8433,
+ closes #8288)
+Files: src/ops.c, src/testdir/test_blockedit.vim,
+ src/testdir/test_visual.vim
+
+Patch 8.2.3074
+Problem: popup_atcursor() uses wrong position with concealing.
+Solution: Keep w_wcol in conceal_check_cursor_line(). (closes #8476)
+Files: src/screen.c, src/proto/screen.pro, src/normal.c, src/edit.c,
+ src/ui.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_atcursor_pos.dump
+
+Patch 8.2.3075
+Problem: Xxd always reports an old version string. (Åsmund Ervik)
+Solution: Update the version string with the last known change date.
+ (Jürgen Weigert, closes #8475)
+Files: src/xxd/xxd.c, src/testdir/test_xxd.vim
+
+Patch 8.2.3076
+Problem: Vim9: using try in catch block causes a hang.
+Solution: Save and restore the ec_in_catch flag. (closes #8478)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3077
+Problem: Vim9: an error in a catch block is not reported.
+Solution: Put the "in catch" flag in the try stack. (closes #8478)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3078
+Problem: Vim9: profile test fails.
+Solution: Make throw in :catch jump to :finally.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3079
+Problem: Powershell core not supported by default.
+Solution: Set option defaults for "pwsh". (Mike Williams, closes #8481)
+Files: runtime/doc/eval.txt, runtime/doc/options.txt,
+ runtime/doc/os_dos.txt, runtime/doc/os_win32.txt, src/fileio.c,
+ src/misc2.c, src/option.c, src/os_win32.c,
+ src/testdir/test_shell.vim
+
+Patch 8.2.3080
+Problem: Recover test fails on 32bit systems. (Ondřej Súkup)
+Solution: Detect 32/64 bit systems. (Yegappan Lakshmanan, closes #8485,
+ closes #8479)
+Files: src/testdir/test_recover.vim
+
+Patch 8.2.3081
+Problem: Cannot catch errors in a channel command.
+Solution: Instead of skipping the error make it silent. (closes #8477)
+Files: src/channel.c
+
+Patch 8.2.3082
+Problem: A channel command "echoerr" does not show anything.
+Solution: Do not use silent errors when using an "echoerr" command.
+ (closes #8494)
+Files: src/channel.c, src/testdir/test_channel.py,
+ src/testdir/test_channel.vim
+
+Patch 8.2.3083
+Problem: Crash when passing null string to charclass().
+Solution: Bail out when string pointer is NULL. (Christian Brabandt,
+ closes #8498, closes #8260)
+Files: src/mbyte.c, src/testdir/test_functions.vim
+
+Patch 8.2.3084
+Problem: Vim9: builtin function argument types are not checked at compile
+ time.
+Solution: Add argument types. (Yegappan Lakshmanan, closes #8503)
+Files: src/evalfunc.c, src/testdir/test_functions.vim,
+ src/testdir/test_glob2regpat.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3085
+Problem: JSONC files are not recognized.
+Solution: Recognize .jsonc files. (Izhak Jakov, closes #8500)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3086
+Problem: Vim9: breakpoint on "for" does not work.
+Solution: Use the right line number in ISN_DEBUG. (closes #8486)
+Files: src/vim9compile.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3087
+Problem: Gemtext files are not recognized.
+Solution: Recognize .gmi and .gemini files. (closes #8427)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3088
+Problem: With 'virtualedit' set to "block" Visual highlight is wrong after
+ using "$". (Marco Trosi)
+Solution: Do not set w_old_cursor_lcol to MAXCOL. (closes #8495)
+Files: src/drawscreen.c, src/testdir/test_visual.vim,
+ src/testdir/dumps/Test_visual_block_with_virtualedit.dump
+
+Patch 8.2.3089
+Problem: Garbage collection has useless code.
+Solution: Bail out when aborting. (closes #8504)
+Files: src/userfunc.c
+
+Patch 8.2.3090
+Problem: With concealing enabled and indirectly closing a fold the cursor
+ may be somewhere in a folded line.
+Solution: Recompute the cursor position when the cursor line can be
+ concealed. (closes #8480)
+Files: src/drawscreen.c
+
+Patch 8.2.3091
+Problem: Vim9: default argument expression cannot use previous argument
+Solution: Correct argument index. (closes #8496)
+Files: src/vim9compile.c, src/structs.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3092
+Problem: Vim9: builtin function test fails without the +channel feature.
+Solution: Check the +channel feature is supported. (Dominique Pellé,
+ closes #8507)
+Files: runtime/doc/eval.txt, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3093
+Problem: tablabel_tooltip test fails with Athena. (Dominique Pellé)
+Solution: Skip the test when using Athena. (closes #8508)
+Files: src/testdir/test_gui.vim, src/testdir/check.vim
+
+Patch 8.2.3094
+Problem: Test_popup_atcursor_pos() fails without the conceal feature.
+Solution: Add a check for the conceal feature. (Dominique Pellé,
+ closes #8505)
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.3095 (after 8.2.3088)
+Problem: With 'virtualedit' set to "block" block selection is wrong after
+ using "$". (Marco Trosi)
+Solution: Compute the longest selected line. (closes #8495)
+Files: src/drawscreen.c, src/testdir/test_visual.vim,
+ src/testdir/dumps/Test_visual_block_with_virtualedit2.dump
+
+Patch 8.2.3096
+Problem: Temp files remain after running tests.
+Solution: Delete the right files. (Dominique Pellé, closes #8509)
+Files: src/testdir/test_debugger.vim, src/testdir/test_lambda.vim,
+ src/testdir/test_visual.vim
+
+
+Patch 8.2.3097
+Problem: Crash when using "quit" at recovery prompt and autocommands are
+ triggered.
+Solution: Block autocommands when creating an empty buffer to use as the
+ current buffer. (closes #8506)
+Files: src/buffer.c, src/testdir/test_swap.vim
+
+Patch 8.2.3098
+Problem: Popup window test is flaky on MS-Windows with GUI.
+Solution: Skip the check in this situation.
+Files: src/testdir/test_popupwin.vim
+
+Patch 8.2.3099
+Problem: Vim9: missing catch/finally not reported at script level.
+Solution: Give an error. (closes #8487)
+Files: src/structs.h, src/ex_eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3100
+Problem: Vim9: no error when using type with unknown number of arguments.
+Solution: Do not ignore argument count of -1. (closes #8492)
+Files: src/vim9type.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.3101
+Problem: Missing function prototype for vim_round().
+Solution: Add the prototype.
+Files: src/proto/float.pro
+
+Patch 8.2.3102 (after 8.2.3097)
+Problem: Test for crash fix does not fail without the fix.
+Solution: Adjust the test sequence. (closes #8506)
+Files: src/testdir/test_swap.vim
+
+Patch 8.2.3103 (after 8.2.3102)
+Problem: Swap test may fail on some systems when jobs take longer to exit.
+Solution: Use different file names.
+Files: src/testdir/test_swap.vim
+
+Patch 8.2.3104
+Problem: Vim9: unspecified function type causes type error.
+Solution: Don't check type when min_argcount is negative. (issue #8492)
+Files: src/globals.h, src/vim9type.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3105
+Problem: Vim9: type of partial is wrong when it has arguments.
+Solution: Subtract arguments from the count. (issue #8492)
+Files: src/vim9type.c, src/userfunc.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3106
+Problem: Vim9: confusing line number reported for error.
+Solution: Use the start line number for the store instruction.
+ (closes #8488)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3107
+Problem: Vim9: error for arguments while type didn't specify arguments.
+Solution: Do not update that type to check when no argument count is
+ specified. (closes #8492)
+Files: src/userfunc.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3108
+Problem: Test for remote_foreground() fails. (Elimar Riesebieter)
+Solution: Check that $DISPLAY is set. (Christian Brabandt)
+Files: src/testdir/check.vim, src/testdir/test_clientserver.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3109
+Problem: Check for $DISPLAY never fails.
+Solution: Use eval().
+Files: src/testdir/check.vim
+
+Patch 8.2.3110
+Problem: A pattern that matches the cursor position is a bit complicated.
+Solution: Use a dot to indicate the cursor line and column. (Christian
+ Brabandt, closes #8497, closes #8179)
+Files: runtime/doc/pattern.txt, src/errors.h, src/regexp_bt.c,
+ src/regexp_nfa.c, src/testdir/test_regexp_latin.vim
+
+Patch 8.2.3111
+Problem: Vim9: confusing error with extra whitespace before colon.
+Solution: Check for colon after white space. (closes #8513)
+Files: src/eval.c, src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3112 (after 8.2.3090)
+Problem: With concealing enabled and indirectly closing a fold the cursor
+ may be somewhere in a folded line when it is not on the first line
+ of the fold.
+Solution: Check if the cursor is somewhere in the folded text.
+Files: src/drawscreen.c
+
+Patch 8.2.3113
+Problem: No error when for loop variable shadows script variable.
+Solution: Check for the error. (closes #8512)
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3114
+Problem: Amiga-like systems: build error checking for running process
+Solution: Only build swapfile_process_running() on systems where it is
+ actually used. (Ola Söder, closes #8519)
+Files: src/memline.c
+
+Patch 8.2.3115
+Problem: Coverity complains about free_wininfo() use.
+Solution: Add a condition that "wip2" is not equal to "wip". (Neovim #14996)
+Files: src/window.c
+
+Patch 8.2.3116
+Problem: Vim9: crash when debugging a function with line continuation.
+Solution: Check for a NULL pointer. (closes #8521)
+Files: src/vim9execute.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3117
+Problem: Vim9: type not properly checked in for loop.
+Solution: Have items() return a list of lists. Add runtime type checks.
+ (closes #8515)
+Files: src/evalfunc.c, src/globals.h, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3118
+Problem: Vim9: "any" type not handled correctly in for loop.
+Solution: Change compile time check into runtime check. (closes #8516)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3119
+Problem: Compiler warning for unused argument.
+Solution: Add UNUSED.
+Files: src/evalfunc.c
+
+Patch 8.2.3120
+Problem: Crypt with sodium test fails on MS-Windows.
+Solution: Make the tests pass. (closes #8428)
+Files: src/testdir/test_crypt.vim
+
+Patch 8.2.3121
+Problem: 'listchars' "exceeds" character appears in foldcolumn. Window
+ separator is missing. (Leonid V. Fedorenchik)
+Solution: Only draw the "exceeds" character in the text area. Break the
+ loop when not drawing the text. (closes #8524)
+Files: src/drawline.c, src/testdir/test_listchars.vim,
+ src/testdir/dumps/Test_listchars_01.dump,
+ src/testdir/dumps/Test_listchars_02.dump,
+ src/testdir/dumps/Test_listchars_03.dump,
+ src/testdir/dumps/Test_listchars_04.dump,
+ src/testdir/dumps/Test_listchars_05.dump
+
+Patch 8.2.3122
+Problem: With 'nowrap' cursor position is unexpected in narrow window.
+ (Leonid V. Fedorenchik)
+Solution: Put cursor on the last non-empty line. (closes #8525)
+Files: src/move.c, src/testdir/test_listchars.vim,
+ src/testdir/dumps/Test_listchars_06.dump,
+ src/testdir/dumps/Test_listchars_07.dump
+
+Patch 8.2.3123
+Problem: Vim9: confusing error when using white space after option, before
+ one of "!&<".
+Solution: Give a specific error. (issue #8408)
+Files: src/errors.h, src/option.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3124
+Problem: Vim9: no error for white space between option and "=9".
+Solution: Check for extraneous white space. (issue #8408)
+Files: src/option.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3125
+Problem: Variables are set but not used.
+Solution: Move the declarations to the block where they are used.
+ (closes #8527)
+Files: src/regexp_nfa.c
+
+Patch 8.2.3126
+Problem: Vim9: for loop error reports wrong line number.
+Solution: Save and restore the line number when evaluating the expression.
+ (closes #8514)
+Files: src/ex_eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3127
+Problem: Vim9: no error when adding number to list of string.
+Solution: Check the value type. (closes #8529)
+Files: src/list.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3128
+Problem: Vim9: uninitialized list does not get type checked.
+Solution: Set the type when initializing the variable. (closes #8529)
+Files: src/eval.c, src/evalvars.c, src/vim9script.c,
+ src/userfunc.c, src/proto/vim9script.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3129
+Problem: Vim9: imported uninitialized list does not get type checked.
+Solution: Get type from imported variable.
+Files: src/eval.c, src/evalvars.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/userfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3130
+Problem: Vim9: import test fails.
+Solution: Rename directory back to "import", use "p" to avoid an error when
+ the directory already exists.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.3131
+Problem: MS-Windows: ipv6 channel test is very flaky in the GUI.
+Solution: Skip the test.
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.3132
+Problem: Compiler warns for size_t to colnr_T conversion. (Randall W.
+ Morris)
+Solution: Add a type cast.
+Files: src/drawscreen.c
+
+Patch 8.2.3133
+Problem: Vim9: memory leak when add() fails.
+Solution: Allocate listitem_T after type check.
+Files: src/list.c
+
+Patch 8.2.3134
+Problem: Crash when using typename() on a function reference. (Naohiro Ono)
+Solution: Initialize pointer to NULL. (closes #8531)
+Files: src/vim9type.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3135
+Problem: Vim9: builtin function arguments not checked at compile time.
+Solution: Add more type checks. (Yegappan Lakshmanan, closes #8539)
+Files: src/channel.c, src/errors.h, src/evalfunc.c, src/proto/typval.pro,
+ src/terminal.c, src/testdir/test_search.vim,
+ src/testdir/test_textprop.vim, src/testdir/test_vim9_builtin.vim,
+ src/testing.c, src/textprop.c, src/typval.c
+
+Patch 8.2.3136
+Problem: No test for E187 and "No swap file".
+Solution: Add a test. (Dominique Pellé, closes #8540)
+Files: src/testdir/test_cd.vim, src/testdir/test_swap.vim
+
+Patch 8.2.3137
+Problem: Vim9: no error when a line only has a variable name.
+Solution: Give an error when an expression is evaluated without an effect.
+ (closes #8538)
+Files: src/ex_eval.c, src/errors.h, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.3138 (after 8.2.3137)
+Problem: Debugger test fails.
+Solution: Adjust eval command.
+Files: src/testdir/test_debugger.vim
+
+Patch 8.2.3139
+Problem: Functions for string manipulation are spread out.
+Solution: Move string related functions to a new source file. (Yegappan
+ Lakshmanan, closes #8470)
+Files: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/eval.c, src/evalfunc.c, src/mbyte.c, src/misc1.c, src/misc2.c,
+ src/proto.h, src/proto/eval.pro, src/proto/evalfunc.pro,
+ src/proto/mbyte.pro, src/proto/misc1.pro, src/proto/misc2.pro,
+ src/proto/strings.pro, src/strings.c
+
+Patch 8.2.3140 (after 8.2.3131)
+Problem: MS-Windows: ipv6 channel test is very flaky also without the GUI.
+Solution: Skip the test also without the GUI.
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.3141
+Problem: No error when using :complete for :command without -nargs.
+Solution: Give an error. (Martin Tournoij, closes #8544, closes #8541)
+Files: src/usercmd.c, src/errors.h, src/testdir/test_usercommands.vim
+
+Patch 8.2.3142
+Problem: Vim9: type check for has_key() argument is too strict.
+Solution: Also allow for a number key argument. (closes #8542)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3143
+Problem: Vim9: A lambda may be compiled with the wrong context if it is
+ called from a profiled function.
+Solution: Compile the lambda with and without profiling. (closes #8543)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3144
+Problem: Vim9: no error when using an invalid value for a line number.
+Solution: Give an error if the string value is not recognized.
+ (closes #8536)
+Files: src/errors.h, src/eval.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3145
+Problem: Vim9: profile test fails without profile feature.
+Solution: Check the profile feature is present.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.3146
+Problem: Vim9: line number wrong for :execute argument.
+Solution: Use the line number of the :execute command itself. (closes #8537)
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3147
+Problem: Vim9: profiling does not work with a nested function.
+Solution: Also compile a nested function without profiling. (closes #8543)
+ Handle that compiling may cause the table of compiled functions to
+ change.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3148
+Problem: Vim9: function arg type check does not handle base offset.
+Solution: Take the base offset into account when checking builtin function
+ argument types.
+Files: src/evalfunc.c, src/vim9compile.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3149 (after 8.2.3141)
+Problem: Some plugins have a problem with the error check for using
+ :command with -complete but without -nargs.
+Solution: In legacy script only give a warning message.
+Files: src/usercmd.c, src/message.c, src/proto/message.pro,
+ src/testdir/test_usercommands.vim
+
+Patch 8.2.3150
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add more type checks. (Yegappan Lakshmanan, closes #8545)
+Files: src/evalfunc.c, src/testing.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3151
+Problem: Vim9: profiling fails if nested function is also profiled.
+Solution: Use the compile type from the outer function. (closes #8543)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3152
+Problem: Vim9: accessing "s:" results in an error.
+Solution: Do not try to lookup a script variable for "s:". (closes #8549)
+Files: src/evalvars.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3153
+Problem: URLs with a dash in the scheme are not recognized.
+Solution: Allow for a scheme with a dash, but not at the start or end.
+ (Tsuyoshi CHO, closes #8299)
+Files: src/misc1.c, src/testdir/test_buffer.vim
+
+Patch 8.2.3154
+Problem: Vim9: some type checks for builtin functions fail.
+Solution: Correct the type checks. (Yegappan Lakshmanan, closes #8551,
+ closes #8550)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3155
+Problem: Some option related code not covered by tests.
+Solution: Add a few test cases. (Dominique Pellé, closes #8552)
+Files: src/testdir/test_options.vim, src/testdir/test_set.vim
+
+Patch 8.2.3156
+Problem: Vim9: term_getansicolors() test fails without +termguicolors.
+Solution: Add a check for the feature. (Dominique Pellé, closes #8555)
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3157
+Problem: Crypt test may fail on MS-Windows.
+Solution: Ignore "[unix]" in the file message. (Christian Brabandt,
+ closes #8561)
+Files: src/testdir/test_crypt.vim
+
+Patch 8.2.3158
+Problem: Strange error message when using islocked() with a number.
+ (Yegappan Lakshmanan)
+Solution: Check that the name is empty.
+Files: src/evalfunc.c, src/testdir/test_functions.vim
+
+Patch 8.2.3159
+Problem: Cursor displayed in wrong position after deleting line.
+Solution: When deleting lines do not approximate botline. (fixes #8559)
+Files: src/change.c
+
+Patch 8.2.3160
+Problem: 'breakindent' does not work well for bulleted and numbered lists.
+Solution: Add the "list" entry to 'breakindentopt'. (Christian Brabandt,
+ closes #8564, closes #1661)
+Files: runtime/doc/options.txt, src/indent.c, src/structs.h,
+ src/testdir/test_breakindent.vim
+
+Patch 8.2.3161
+Problem: Vim9: no error when reltime() has invalid arguments.
+Solution: Add an error. (closes #8562)
+Files: src/time.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3162
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add more type checks. (Yegappan Lakshmanan, closes #8560)
+Files: runtime/doc/channel.txt, src/clientserver.c, src/cmdhist.c,
+ src/errors.h, src/evalfunc.c, src/evalwindow.c, src/filepath.c,
+ src/globals.h, src/popupwin.c, src/proto/typval.pro, src/sign.c,
+ src/strings.c, src/terminal.c, src/testdir/test_normal.vim,
+ src/testdir/test_reltime.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_expr.vim, src/testing.c, src/textprop.c,
+ src/time.c, src/typval.c
+
+Patch 8.2.3163
+Problem: Location list window may open a wrong file.
+Solution: Also update the qf_ptr field. (Wei-Chung Wen, closes #8565,
+ closes #8566)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.3164
+Problem: MS-Windows: reported version lacks patchlevel, causing some update
+ tools to update too often. (Klaus Frank)
+Solution: Add the patchlevel to the version. (Christian Brabandt)
+Files: src/dosinst.c
+
+Patch 8.2.3165
+Problem: Vim9: in a || expression the error line number may be wrong.
+Solution: Save and restore the line number when checking the type.
+ (closes #8569)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3166
+Problem: Vim9: nested autoload call error overruled by "Unknown error".
+Solution: Check need_rethrow before giving an "Unknown error".
+ (closes #8568)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3167
+Problem: Get E12 in a job callback when searching for tags. (Andy Stewart)
+Solution: Use the sandbox only for executing a command, not for searching.
+ (closes #8511)
+Files: src/tag.c
+
+Patch 8.2.3168
+Problem: Vim9: type error for constant of type any.
+Solution: Do add a runtime type check if a constant has type any.
+ (closes #8570)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3169
+Problem: Vim9: cannot handle nested inline function.
+Solution: Check for nested inline function. (closes #8575)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3170
+Problem: Illegal memory access in test.
+Solution: Check pointer is not before the start of the line.
+Files: src/userfunc.c
+
+Patch 8.2.3171
+Problem: Another illegal memory access in test.
+Solution: Check pointer is after the start of the line.
+Files: src/userfunc.c
+
+Patch 8.2.3172
+Problem: MzScheme test fails. (Christian Brabandt)
+Solution: Correct function name.
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3173
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add more type checks. (Yegappan Lakshmanan, closes #8581)
+Files: src/diff.c, src/errors.h, src/evalfunc.c, src/globals.h,
+ src/job.c, src/proto/typval.pro, src/strings.c, src/terminal.c,
+ src/testdir/test_vim9_builtin.vim, src/typval.c
+
+Patch 8.2.3174
+Problem: Vim9: "legacy undo" finds "undo" variable.
+Solution: Do not pass lookup function to find_ex_command(). (closes #8563)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3175
+Problem: Vim9: using illegal pointer with inline function inside a lambda.
+Solution: Clear eval_tofree_cmdline when advancing to the next line.
+ (closes #8578)
+Files: src/eval.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3176
+Problem: Vim9: no type error for comparing number with string.
+Solution: Add a runtime type check. (closes #8571)
+Files: src/typval.c, src/errors.h, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3177
+Problem: Vim9: can not use "for _ in expr" at script level.
+Solution: Skip assignment if the loop variable is "_".
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3178
+Problem: Vim9: the file name of an :import cannot be an expression.
+Solution: Accept an expression that results in a string. Do not support
+ :import in a function.
+Files: runtime/doc/vim9.txt, src/vim9script.c, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3179
+Problem: Vim9: cannot assign to an imported variable at script level.
+Solution: Lookup imported items when assigning.
+Files: src/evalvars.c, src/errors.h, src/eval.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3180
+Problem: Vim9: memory leak when concatenating to an imported string.
+Solution: Clear the destination.
+Files: src/evalvars.c
+
+Patch 8.2.3181
+Problem: Vim9: builtin function test fails without channel feature.
+Solution: Add feature checks. (Dominique Pellé, closes #8586) Make feature
+ checks more consistent.
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3182
+Problem: Vim9: crash when using removing items from a constant list.
+ (Yegappan Lakshmanan)
+Solution: When a list was allocated with items copy them.
+Files: src/list.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3183
+Problem: Duplicate error numbers.
+Solution: Adjust the error numbers.
+Files: src/errors.h, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3184
+Problem: Cannot add a digraph with a leading space. It is not easy to list
+ existing digraphs.
+Solution: Add setdigraph(), setdigraphlist(), getdigraph() and
+ getdigraphlist(). (closes #8580)
+Files: runtime/doc/digraph.txt, runtime/doc/eval.txt,
+ runtime/doc/usr_41.txt, src/digraph.c, src/evalfunc.c,
+ src/ex_docmd.c, src/globals.h, src/errors.h,
+ src/proto/digraph.pro, src/testdir/test_digraph.vim
+
+Patch 8.2.3185
+Problem: Vim9: start of inline function found in comment line.
+Solution: Do not check for inline function in comment line. (closes #8589)
+Files: src/userfunc.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3186
+Problem: Vim9: not all failures for import tested
+Solution: Test more import failures
+Files: src/errors.h, src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3187
+Problem: Vim9: popup timer callback is not compiled.
+Solution: Compile the callback when creating the timer.
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/popupwin.c
+
+Patch 8.2.3188
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add several more type checks, also at runtime. (Yegappan
+ Lakshmanan, closes #8587)
+Files: src/blob.c, src/channel.c, src/clientserver.c, src/cmdexpand.c,
+ src/cmdhist.c, src/dict.c, src/diff.c, src/errors.h, src/eval.c,
+ src/evalbuffer.c, src/evalfunc.c, src/evalvars.c,
+ src/evalwindow.c, src/filepath.c, src/globals.h, src/insexpand.c,
+ src/job.c, src/list.c, src/map.c, src/match.c,
+ src/proto/typval.pro, src/quickfix.c, src/search.c, src/sign.c,
+ src/strings.c, src/terminal.c, src/testdir/test_blob.vim,
+ src/testdir/test_gui.vim, src/testdir/test_vim9_builtin.vim,
+ src/testing.c, src/textprop.c, src/time.c, src/typval.c
+
+Patch 8.2.3189
+Problem: Vim9: error when using "try|".
+Solution: Allow for "|" right after a command.
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3190
+Problem: Error messages are spread out.
+Solution: Move error messages to errors.h and give them a clear name.
+Files: src/globals.h, src/errors.h, src/buffer.c, src/debugger.c,
+ src/digraph.c, src/edit.c, src/ex_cmds.c, src/ex_cmds2.c,
+ src/ex_docmd.c, src/ex_eval.c, src/gui.c, src/list.c, src/main.c,
+ src/map.c, src/match.c, src/quickfix.c, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/search.c,
+ src/session.c, src/spell.c, src/syntax.c, src/time.c,
+ src/userfunc.c, src/vim9execute.c, src/window.c
+
+Patch 8.2.3191
+Problem: Vim9: not enough code is tested.
+Solution: Use CheckLegacyAndVim9Success() in more places. Fix uncovered
+ problems.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_listdict.vim
+
+Patch 8.2.3192 (after 8.2.3190)
+Problem: Build failure with small version (Tony Mechelynck).
+Solution: Remove stray #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3193
+Problem: screenpos() is wrong when the last line is partially visible and
+ 'display' is "lastline".
+Solution: Also compute the position for a partially visible line.
+ (closes #8599)
+Files: src/move.c, src/testdir/test_cursor_func.vim
+
+Patch 8.2.3194
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add several more type checks, simplify some. (Yegappan
+ Lakshmanan, closes #8598)
+Files: src/diff.c, src/evalbuffer.c, src/evalfunc.c, src/job.c,
+ src/proto/typval.pro, src/sign.c, src/terminal.c,
+ src/testdir/test_vim9_builtin.vim, src/typval.c
+
+Patch 8.2.3195
+Problem: Vim9: unclear error when passing too many arguments to lambda.
+Solution: Pass the expression itself instead of "[expression]".
+ (closes #8604)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3196
+Problem: Vim9: bool expression with numbers only fails at runtime.
+Solution: Check constant to be bool at compile time. (closes #8603)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3197
+Problem: Error messages are spread out.
+Solution: Move a few more error messages to errors.h.
+Files: src/globals.h, src/errors.h, src/edit.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/evalvars.c, src/option.c, src/quickfix.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/regexp.c, src/undo.c,
+ src/vim9compile.c, src/vim9script.c
+
+Patch 8.2.3198
+Problem: Cannot use 'formatlistpat' for breakindent.
+Solution: Use a negative list indent. (Maxim Kim, closes #8594)
+Files: runtime/doc/options.txt, src/indent.c,
+ src/testdir/test_breakindent.vim
+
+Patch 8.2.3199
+Problem: Vim9: execution speed can be improved.
+Solution: Make the break counter static.
+Files: src/vim9execute.c
+
+Patch 8.2.3200
+Problem: Vim9: hard to guess where a type error is given.
+Solution: Add the function name where possible. (closes #8608)
+Files: src/dict.c, src/proto/dict.pro, src/eval.c, src/list.c,
+ src/vim9compile.c, src/vim9execute.c, src/structs.h,
+ src/vim9type.c, src/proto/vim9type.pro, src/if_py_both.h,
+ src/errors.h, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3201 (after 8.2.3200)
+Problem: Crash in test.
+Solution: Initialize "where".
+Files: src/eval.c, src/evalvars.c
+
+Patch 8.2.3202
+Problem: Vim9: tests are only executed for legacy script.
+Solution: Run more tests also for Vim9 script. Fix uncovered problems.
+Files: src/vim9execute.c, src/ex_docmd.c, src/testdir/test_listdict.vim
+
+Patch 8.2.3203
+Problem: Vim9: compiled string expression causes type error. (Yegappan
+ Lakshmanan)
+Solution: Remove the string type from the stack.
+Files: src/vim9compile.c, src/evalfunc.c
+
+Patch 8.2.3204
+Problem: Display garbled when 'cursorline' is set and lines wrap. (Gabriel
+ Dupras)
+Solution: Avoid inserting lines twice. (closes #7255)
+Files: src/drawscreen.c, src/testdir/test_cursorline.vim,
+ src/testdir/dumps/Test_cursorline_redraw_1.dump,
+ src/testdir/dumps/Test_cursorline_redraw_2.dump
+
+Patch 8.2.3205
+Problem: Coverity reports a null pointer dereference.
+Solution: Change the logic to avoid Coverity gets confused.
+Files: src/vim9compile.c
+
+Patch 8.2.3206
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add several more type checks. (Yegappan Lakshmanan, closes #8611)
+Files: runtime/doc/eval.txt, src/blob.c, src/cmdhist.c, src/dict.c,
+ src/errors.h, src/evalfunc.c, src/filepath.c, src/globals.h,
+ src/job.c, src/list.c, src/match.c, src/misc1.c, src/popupwin.c,
+ src/proto/typval.pro, src/sign.c, src/terminal.c,
+ src/testdir/test_blob.vim, src/testdir/test_vim9_builtin.vim,
+ src/typval.c
+
+Patch 8.2.3207
+Problem: Vim9: crash when compiling string fails. (Yegappan Lakshmanan)
+Solution: Adjust the type stack length.
+Files: src/vim9compile.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3208
+Problem: Dynamic library load error does not mention why it failed.
+Solution: Add the error message. (Martin Tournoij, closes #8621)
+Files: src/globals.h, src/if_cscope.c, src/if_lua.c, src/if_mzsch.c,
+ src/if_perl.xs, src/if_python.c, src/if_python3.c, src/if_ruby.c,
+ src/if_tcl.c, src/mbyte.c, src/os_win32.c, src/proto/os_win32.pro,
+ src/terminal.c
+
+Patch 8.2.3209
+Problem: Vim9: lambda doesn't find block-local variable.
+Solution: Adjust how a script-local variable is found. (closes #8614)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3210
+Problem: Vim9: searchpair() sixth argument is compiled. (Yegappan
+ Lakshmanan)
+Solution: Only compile the fifth argument.
+Files: src/vim9compile.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3211
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add several more type checks. Fix type check for matchaddpos().
+ (Yegappan Lakshmanan, closes #8619)
+Files: src/channel.c, src/evalfunc.c, src/evalvars.c, src/if_cscope.c,
+ src/job.c, src/proto/typval.pro,
+ src/testdir/test_vim9_builtin.vim, src/time.c, src/typval.c
+
+Patch 8.2.3212
+Problem: Vim9: execution speed can be improved.
+Solution: Use __builtin_expect() to have the compiler produce better code.
+ (Dominique Pellé, closes #8613)
+Files: src/vim9execute.c
+
+Patch 8.2.3213
+Problem: NOCOMPOUNDSUGS entry in spell file not tested.
+Solution: Add a test. (Dominique Pellé, closes #8624)
+Files: src/testdir/test_spellfile.vim
+
+Patch 8.2.3214
+Problem: MS-Windows: passing /D does not set the install location.
+Solution: Adjust how the installer uses $VIM. Update the documentation.
+ (Christian Brabandt, Ken Takata, closes #8605)
+Files: nsis/gvim.nsi, runtime/doc/os_win32.txt
+
+Patch 8.2.3215
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add several more type checks. Sort the argument lists.
+ (Yegappan Lakshmanan, closes #8626)
+Files: src/change.c, src/evalfunc.c, src/filepath.c, src/sound.c,
+ src/testdir/test_gui.vim, src/testdir/test_vim9_builtin.vim,
+ src/testing.c
+
+Patch 8.2.3216
+Problem: Vim9: crash when using variable in a loop at script level.
+Solution: Do not clear the variable if a function was defined.
+ Do not create a new entry in sn_var_vals every time.
+ (closes #8628)
+Files: src/eval.c, src/ex_eval.c, src/vim9script.c, src/userfunc.c,
+ src/evalvars.c, src/structs.h
+
+Patch 8.2.3217 (after 8.2.3216)
+Problem: Build failure.
+Solution: Add missing changes.
+Files: src/globals.h
+
+Patch 8.2.3218
+Problem: When using xchacha20 crypt undo file is not removed.
+Solution: Reset 'undofile' and delete the file. (Christian Brabandt,
+ closes #8630, closes #8467)
+Files: src/bufwrite.c, src/crypt.c, src/proto/undo.pro,
+ src/testdir/test_crypt.vim, src/undo.c
+
+Patch 8.2.3219
+Problem: :find searches non-existing directories.
+Solution: Check the path is not "..". Update help. (Christian Brabandt,
+ closes #8612, closes #8533)
+Files: runtime/doc/editing.txt, src/findfile.c,
+ src/testdir/test_findfile.vim
+
+Patch 8.2.3220
+Problem: Test_term_setansicolors() fails in some configurations.
+Solution: Check available features. (Dominique Pellé, closes #8636)
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3221
+Problem: Vim9: argument types are not checked at compile time.
+Solution: Add several more type checks. (Yegappan Lakshmanan, closes #8632)
+Files: src/evalfunc.c, src/popupwin.c, src/proto/typval.pro,
+ src/testdir/test_assert.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_script.vim, src/testing.c, src/typval.c
+
+Patch 8.2.3222
+Problem: Vim9: cannot use loop variable later as lambda argument.
+Solution: When not in function context check the current block ID.
+ (closes #8637)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3223
+Problem: Vim: using {} block in autoloaded omnifunc fails.
+Solution: Allow using {} block when text is locked. (closes #8631)
+Files: src/ex_cmds.h, src/testdir/test_ins_complete.vim
+
+Patch 8.2.3224
+Problem: Cannot call script-local function after :vim9cmd. (Christian J.
+ Robinson)
+Solution: Skip over "<SNR>123".
+Files: src/vim9compile.c, src/eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3225
+Problem: Incsearch highlighting is attempted halfway a mapping.
+Solution: Only do incsearch highlighting if keys were typed or there is no
+ more typeahead.
+Files: src/ex_getln.c
+
+Patch 8.2.3226
+Problem: New digraph functions use old naming scheme.
+Solution: Use the digraph_ prefix. (Hirohito Higashi, closes #8642)
+Files: runtime/doc/digraph.txt, runtime/doc/eval.txt,
+ runtime/doc/usr_41.txt, src/digraph.c, src/edit.c, src/errors.h,
+ src/evalfunc.c, src/proto/digraph.pro,
+ src/testdir/test_digraph.vim
+
+Patch 8.2.3227
+Problem: 'virtualedit' can only be set globally.
+Solution: Make 'virtualedit' global-local. (Gary Johnson, closes #8638)
+Files: runtime/doc/options.txt, src/buffer.c, src/change.c,
+ src/drawscreen.c, src/edit.c, src/misc2.c, src/normal.c,
+ src/ops.c, src/option.c, src/option.h, src/optiondefs.h,
+ src/optionstr.c, src/proto/option.pro, src/register.c,
+ src/structs.h, src/testdir/test_virtualedit.vim
+
+Patch 8.2.3228
+Problem: Cannot use a simple block for the :command argument. (Maarten
+ Tournoij)
+Solution: Recognize a simple {} block. (issue #8623)
+Files: runtime/doc/map.txt, src/misc2.c, src/proto/misc2.pro,
+ src/usercmd.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.3229
+Problem: Vim9: runtime and compile time type checks are not the same.
+Solution: Add more runtime type checks for builtin functions. (Yegappan
+ Lakshmanan, closes #8646)
+Files: src/arglist.c, src/change.c, src/channel.c, src/cindent.c,
+ src/clientserver.c, src/cmdhist.c, src/dict.c, src/diff.c,
+ src/digraph.c, src/errors.h, src/eval.c, src/evalbuffer.c,
+ src/evalfunc.c, src/evalwindow.c, src/ex_docmd.c, src/ex_getln.c,
+ src/filepath.c, src/findfile.c, src/float.c, src/fold.c,
+ src/getchar.c, src/indent.c, src/insexpand.c, src/job.c,
+ src/json.c, src/list.c, src/mark.c, src/match.c, src/mbyte.c,
+ src/menu.c, src/misc1.c, src/move.c, src/popupwin.c,
+ src/proto/typval.pro, src/quickfix.c, src/search.c, src/sign.c,
+ src/sound.c, src/strings.c, src/terminal.c,
+ src/testdir/test_assert.vim, src/testdir/test_blob.vim,
+ src/testdir/test_execute_func.vim,
+ src/testdir/test_float_func.vim, src/testdir/test_functions.vim,
+ src/testdir/test_glob2regpat.vim, src/testdir/test_listdict.vim,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_script.vim, src/testing.c, src/textprop.c,
+ src/time.c, src/typval.c, src/undo.c
+
+Patch 8.2.3230
+Problem: Vim9: type error when function return type is not known yet.
+Solution: When return type is unknown, use "any". (closes #8644)
+Files: src/vim9compile.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3231
+Problem: Build failure with small features.
+Solution: Adjust #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3232 (after 8.2.3229)
+Problem: system() does not work without a second argument.
+Solution: Do not require a second argument. (Yegappan Lakshmanan,
+ closes #8651, closes #8650)
+Files: src/misc1.c, src/proto/typval.pro,
+ src/testdir/test_vim9_builtin.vim, src/typval.c
+
+Patch 8.2.3233
+Problem: prop_list() and prop_find() do not indicate the buffer for the
+ used type.
+Solution: Add "type_bufnr" to the results. (closes #8647)
+Files: runtime/doc/textprop.txt, src/testdir/test_textprop.vim,
+ src/textprop.c
+
+Patch 8.2.3234
+Problem: Crash when printing long string with Lua.
+Solution: Remove lua_pop(). (Martin Tournoij, closes #8648)
+Files: src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.3235
+Problem: Cannot use lambda in {} block in user command. (Martin Tournoij)
+Solution: Do not go over the end of the lambda.
+Files: src/userfunc.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.3236
+Problem: mode() does not indicate using CTRL-O in Select mode.
+Solution: Use "vs" and similar. (closes #8640)
+Files: runtime/doc/eval.txt, src/globals.h, src/misc1.c, src/normal.c,
+ src/testdir/test_functions.vim
+
+Patch 8.2.3237
+Problem: When a builtin function gives an error processing continues.
+Solution: In Vim9 script return FAIL in get_func_tv().
+Files: src/userfunc.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3238
+Problem: Vim9: error message does not indicate the location.
+Solution: Add the relevant text. (issue #8634)
+Files: src/errors.h, src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3239
+Problem: Vim9: no error using heredoc for a number variable.
+Solution: Add a type check. (closes #8627)
+Files: src/vim9compile.c, src/evalvars.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3240
+Problem: Lua print() does not work properly.
+Solution: Put back lua_pop().
+Files: src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.3241
+Problem: Vim9: memory leak when function reports an error.
+Solution: Clear the return value.
+Files: src/userfunc.c
+
+Patch 8.2.3242
+Problem: Vim9: valgrind reports leaks in builtin function test.
+Solution: Do not start a job.
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3243
+Problem: MS-Windows: the "edit with multiple Vim" choice is not that
+ useful.
+Solution: Change it to "Edit with multiple tabs". (Michael Soyka,
+ closes #8645)
+Files: src/GvimExt/gvimext.cpp, src/GvimExt/gvimext.h
+
+Patch 8.2.3244
+Problem: Lua 5.3 print() with a long string crashes.
+Solution: Use a growarray instead of a Lua buffer. (Yegappan Lakshmanan,
+ closes #8655)
+Files: src/if_lua.c, src/misc2.c, src/proto/misc2.pro
+
+Patch 8.2.3245
+Problem: The crypt key may appear in a swap partition.
+Solution: When using xchacha20 use sodium_mlock(). (Christian Brabandt,
+ closes #8657)
+Files: src/buffer.c, src/crypt.c, src/errors.h, src/fileio.c,
+ src/memline.c, src/vim.h
+
+Patch 8.2.3246
+Problem: Memory use after free.
+Solution: When clearing a string option set the pointer to "empty_option".
+Files: src/option.c
+
+Patch 8.2.3247
+Problem: Using uninitialized memory when checking for crypt method.
+Solution: Check the header length before using the salt and seed.
+Files: src/fileio.c
+
+Patch 8.2.3248
+Problem: Vim9: error message for wrong input uses wrong line number.
+Solution: Use the line number of the start of the command. (issue #8653)
+Files: src/vim9script.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3249
+Problem: Vim9: error for re-imported function with default argument.
+Solution: Do not check argument type if it is still unknown. (closes #8653)
+Files: src/vim9type.c, src/proto/vim9type.pro, src/vim9script.c,
+ src/vim.h, src/eval.c, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3250
+Problem: MS-Windows: cannot build with libsodium.
+Solution: Change FEAT_SODIUM into HAVE_SODIUM. (Christian Brabandt,
+ closes #8668, closes #8663)
+Files: src/Make_mvc.mak
+
+Patch 8.2.3251
+Problem: Listing builtin_gui as an available terminal is confusing.
+Solution: Do not list builtin_gui. (Christian Brabandt, closes #8669,
+ closes #8661)
+Files: src/term.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.3252
+Problem: Duplicated code for adding buffer lines.
+Solution: Move code to a common function. Also move map functions to map.c.
+ (Yegappan Lakshmanan, closes #8665)
+Files: src/evalbuffer.c, src/evalfunc.c, src/map.c, src/proto/map.pro
+
+Patch 8.2.3253
+Problem: Channel test fails randomly.
+Solution: Add a sleep after sending the "echoerr" command. (Michael Soyka)
+Files: src/testdir/test_channel.vim, src/testdir/test_channel.py
+
+Patch 8.2.3254
+Problem: win_gettype() does not recognize a quickfix window.
+Solution: Add "quickfix" and "loclist". (Yegappan Lakshmanan, closes #8676)
+Files: runtime/doc/eval.txt, src/evalwindow.c, src/misc2.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.3255
+Problem: ci" finds following string but ci< and others don't.
+Solution: When not inside an object find the start. (Connor Lane Smit,
+ closes #8670)
+Files: src/search.c, src/testdir/test_textobjects.vim, src/textobject.c
+
+Patch 8.2.3256
+Problem: Executable test may fail on new Ubuntu system.
+Solution: Consider /usr/bin/cat and /bin/cat the same.
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.3257
+Problem: Calling prop_find() with -1 for ID gives erroneous error. (Naohiro
+ Ono)
+Solution: When passing -1 use -2. (closes #8674)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.3258
+Problem: Error messages have the wrong text.
+Solution: Adjust the error message.
+Files: src/errors.h, src/typval.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3259
+Problem: When 'indentexpr' causes an error the did_throw flag may remain
+ set.
+Solution: Reset did_throw and show the error. (closes #8677)
+Files: src/indent.c, src/ex_docmd.c, src/proto/ex_docmd.pro
+
+Patch 8.2.3260
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.3261
+Problem: Vim9: when compiling repeat(123, N) return type is number.
+Solution: Make return type a string. (closes #8664)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3262
+Problem: Build failure when ABORT_ON_INTERNAL_ERROR is defined.
+Solution: Adjust how estack_len_before is used.
+Files: src/ex_docmd.c
+
+Patch 8.2.3263
+Problem: Vim9: "..=" does not accept same types as the ".." operator.
+Solution: Convert value to string like ".." does. (issue #8664)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3264 (after 8.2.3263)
+Problem: Vim9: assign test fails.
+Solution: Add missing change.
+Files: src/eval.c
+
+Patch 8.2.3265
+Problem: Smartcase does not work correctly in very magic pattern.
+Solution: Take the magicness into account when skipping over regexp items.
+ (Christian Brabandt, closes #8682, closes #7845)
+Files: src/search.c, src/testdir/test_search.vim
+
+Patch 8.2.3266
+Problem: Vim9: assignment with two indexes may check next line.
+Solution: Limit the number of lines to avoid checking the next line when
+ assigning to a LHS subscript. (closes #8660)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3267
+Problem: Vim9: crash when disassembling a function that uses a deleted
+ script variable.
+Solution: Check the variable still exists. (closes #8683)
+Files: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3268
+Problem: Cannot use a block with :autocmd like with :command.
+Solution: Add support for a {} block after :autocmd. (closes #8620)
+Files: runtime/doc/autocmd.txt, runtime/doc/map.txt, src/autocmd.c,
+ src/proto/autocmd.pro, src/usercmd.c, src/proto/usercmd.pro,
+ src/ex_docmd.c, src/vim.h, src/testdir/test_autocmd.vim
+
+Patch 8.2.3269
+Problem: Vim9: wrong argument check for partial. (Naohiro Ono)
+Solution: Handle getting return type without arguments. Correct the minimal
+ number of arguments for what is included in the partial.
+ (closes #8667)
+Files: src/evalfunc.c, src/vim9type.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3270
+Problem: prop_find() finds property with ID -2.
+Solution: Use a separate flag to indicate an ID was specified. (issue #8674)
+Files: src/textprop.c
+
+Patch 8.2.3271
+Problem: Vim9: cannot use :command or :au with a block in a :def function.
+Solution: Recognize the start of the block.
+Files: src/userfunc.c, src/usercmd.c, src/ex_docmd.c,
+ src/proto/ex_docmd.pro, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3272
+Problem: Cannot use id zero with prop_find(). (Naohiro Ono)
+Solution: Also accept id zero.
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.3273
+Problem: Autocmd test fails.
+Solution: Require white space before the "{" that starts a block.
+Files: src/userfunc.c
+
+Patch 8.2.3274
+Problem: Macro for printf format check can be simplified.
+Solution: Add ATTRIBUTE_FORMAT_PRINTF(). (Dominique Pellé, issue #8635)
+Files: src/channel.c, src/gui_xim.c, src/if_mzsch.c, src/nbdebug.c,
+ src/nbdebug.h, src/netbeans.c, src/proto.h, src/term.c, src/vim.h,
+ src/vim9execute.c
+
+Patch 8.2.3275
+Problem: Optimizer can use hints about ga_grow() normally succeeding.
+Solution: Use GA_GROW_FAILS() and GA_GROW_OK() in several places. (Dominique
+ Pellé, issue #8635)
+Files: src/arglist.c, src/macros.h, src/vim9execute.c, src/vim9compile.c
+
+Patch 8.2.3276
+Problem: Vim9: exists() can only be evaluated at runtime.
+Solution: Evaluate at compile time for option name literals. (closes #8437)
+Files: src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3277 (after 8.2.3276)
+Problem: Vim9: compiled has() does not work properly.
+Solution: Fix check for has() vs exists().
+Files: src/vim9compile.c
+
+Patch 8.2.3278
+Problem: Vim9: error when adding 1 to float.
+Solution: Accept t_number_bool. (closes #8687)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3279
+Problem: Vim9: cannot use block in cmdline window.
+Solution: Add EX_CMDWIN to the CMD_block flags. (closes #8689)
+Files: src/ex_cmds.h, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3280
+Problem: 'virtualedit' local to buffer is not the best solution.
+Solution: Make it window-local. (Gary Johnson, closes #8685)
+Files: runtime/doc/options.txt, src/buffer.c, src/drawscreen.c,
+ src/ops.c, src/option.c, src/option.h, src/optionstr.c,
+ src/structs.h, src/testdir/test_virtualedit.vim
+
+Patch 8.2.3281
+Problem: Vim9: TODO items in tests can be taken care of.
+Solution: Update test for now working functionality. (closes #8694)
+Files: src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3282
+Problem: Vim9: error about using -complete without -nargs is confusing.
+Solution: Change the wording.
+Files: src/usercmd.c, src/errors.h
+
+Patch 8.2.3283
+Problem: Julia filetype is not recognized
+Solution: Add filetype detection. (Christian Clason, closes #8700)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3284
+Problem: No error for insert() or remove() changing a locked blob.
+Solution: Check a blob is not locked before changing it. (Sean Dewar,
+ closes #8696)
+Files: src/blob.c, src/errors.h, src/eval.c, src/list.c,
+ src/proto/blob.pro, src/testdir/test_blob.vim,
+ src/testdir/test_eval_stuff.vim
+
+Patch 8.2.3285
+Problem: Scdoc filetype is not recognized.
+Solution: Add filetype detection. (Gregory Anders, closes #8701)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3286
+Problem: win_enter_ext() has too many boolean arguments.
+Solution: use one flags argument with defined values.
+Files: src/window.c
+
+Patch 8.2.3287
+Problem: Channel events not handled in BufEnter autocommand.
+Solution: Decrement dont_parse_messages earlier. (Tim Pope, closes #8697)
+Files: src/window.c, src/testdir/test_channel.vim
+
+Patch 8.2.3288
+Problem: Cannot easily access namespace dictionaries from Lua.
+Solution: Add vim.g, vim.b, etc. (Yegappan Lakshmanan, closes #8693,
+ from NeoVim)
+Files: runtime/doc/if_lua.txt, src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.3289 (after 8.2.3287)
+Problem: Compiler warning for unused variable with small features.
+Solution: Rearrange #ifdefs.
+Files: src/window.c
+
+Patch 8.2.3290
+Problem: Vim9: compiling dict may use pointer after free and leak memory on
+ failure.
+Solution: Pass a pointer to generate_PUSHS(). (Zdenek Dohnal, closes #8699)
+Files: src/vim9compile.c
+
+Patch 8.2.3291
+Problem: Coverity warns for not checking return value.
+Solution: If dict_add() fails give an error message.
+Files: src/if_lua.c, src/testdir/test_lua.vim
+
+Patch 8.2.3292
+Problem: Underscore in very magic pattern causes a hang. Pattern with \V
+ are case sensitive. (Yutao Yuan)
+Solution: Adjust condition for magicness and advance pointer. (Christian
+ Brabandt, closes #8707, closes #8704, closes #8705)
+Files: src/search.c, src/testdir/test_search.vim
+
+Patch 8.2.3293
+Problem: Finding completions may cause an endless loop.
+Solution: Use a better way to check coming back where the search started.
+ (Andy Gozas, closes #8672, closes #8671)
+Files: src/insexpand.c, src/testdir/Make_all.mak,
+ src/testdir/test_ins_complete_no_halt.vim
+
+Patch 8.2.3294
+Problem: Lua: memory leak when adding dict item fails.
+Solution: Free the typval and the dict item.
+Files: src/if_lua.c
+
+Patch 8.2.3295
+Problem: 'cursorline' should not apply to 'breakindent'.
+Solution: Make 'cursorline' apply to 'breakindent' and 'showbreak'
+ consistently. (closes #8684)
+Files: src/drawline.c, src/testdir/dumps/Test_Xcursorline_19.dump,
+ src/testdir/dumps/Test_Xcursorline_20.dump,
+ src/testdir/dumps/Test_Xcursorline_21.dump,
+ src/testdir/dumps/Test_Xcursorline_22.dump,
+ src/testdir/dumps/Test_Xcursorline_23.dump,
+ src/testdir/dumps/Test_Xcursorline_24.dump,
+ src/testdir/dumps/Test_diff_with_cul_bri_01.dump,
+ src/testdir/dumps/Test_diff_with_cul_bri_02.dump,
+ src/testdir/dumps/Test_diff_with_cul_bri_03.dump,
+ src/testdir/dumps/Test_diff_with_cul_bri_04.dump,
+ src/testdir/test_cursorline.vim, src/testdir/test_diffmode.vim
+
+Patch 8.2.3296
+Problem: Vim9: cannot add a number to a float.
+Solution: Accept a number if the destination is a float. (closes #8703)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3297
+Problem: Cannot use all commands inside a {} block after :command and
+ :autocmd.
+Solution: Do consider \n to separate commands. (closes #8620)
+Files: runtime/doc/map.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/ex_eval.c, src/proto/ex_eval.pro, src/eval.c, src/evalvars.c,
+ src/ex_cmds.c, src/syntax.c, src/userfunc.c, src/vim9compile.c,
+ src/vim9script.c, src/errors.h, src/testdir/test_autocmd.vim,
+ src/testdir/test_usercommands.vim
+
+Patch 8.2.3298
+Problem: Build failure with small features.
+Solution: Add #ifdef.
+Files: src/ex_docmd.c
+
+Patch 8.2.3299
+Problem: Vim9: exists() does not handle much at compile time.
+Solution: Handle variable names. (closes #8688)
+Files: src/vim9compile.c, src/evalfunc.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3300
+Problem: Lua: can only execute one Vim command at a time. Not easy to get
+ the Vim version.
+Solution: Make vim.command() accept multiple lines. Add vim.version().
+ (Yegappan Lakshmanan, closes #8716)
+Files: runtime/doc/if_lua.txt, src/evalfunc.c, src/if_lua.c,
+ src/proto/evalfunc.pro, src/testdir/test_lua.vim,
+ src/testdir/test_shell.vim
+
+Patch 8.2.3301
+Problem: Memory allocation functions don't have their own place.
+Solution: Move memory allocation functions to alloc.c. (Yegappan
+ Lakshmanan, closes #8717)
+Files: Filelist, src/Make_ami.mak, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md,
+ src/alloc.c, src/misc2.c, src/proto.h, src/proto/alloc.pro,
+ src/proto/misc2.pro
+
+Patch 8.2.3302
+Problem: Coverity is not run from github.
+Solution: Add a coverity script. (James McCoy, closes #8714)
+Files: .github/workflows/coverity.yml, Filelist
+
+Patch 8.2.3303
+Problem: Some structures could be smaller.
+Solution: Rearrange members to reduce size. (Dominique Pellé, closes #8725)
+Files: src/structs.h, src/vim9.h, src/vim9execute.c
+
+Patch 8.2.3304
+Problem: Popup window title with wide characters is truncated.
+Solution: Use vim_strsize() instead of MB_CHARLEN(). (Naruhiko Nishino,
+ closes #8721)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_multibytetitle.dump
+
+Patch 8.2.3305
+Problem: Vim9: :finally in skipped block not handled correctly.
+Solution: Check whether :finally is in a skipped block. (Naruhiko Nishino,
+ closes #8724)
+Files: src/ex_eval.c, src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3306
+Problem: Unexpected "No matching autocommands".
+Solution: Do not give the message when aborting. Mention the arguments in
+ the message. (closes #8690)
+Files: src/autocmd.c,
+
+Patch 8.2.3307
+Problem: Vim9: :echoconsole cannot access local variables.
+Solution: Handle like other :echo commands. (closes #8708)
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3308
+Problem: Vim9: no runtime check for argument type if a function only has
+ varargs.
+Solution: Also check argument types if uf_va_type is set. (closes #8715)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3309
+Problem: Vim9: divide by zero causes a crash.
+Solution: Give an error message. (closes #8727)
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3310
+Problem: Vim9: unpack assignment does not mention source of type error.
+Solution: Mention the argument number. (closes #8719)
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3311
+Problem: Vim9: check for DO_NOT_FREE_CNT is very slow.
+Solution: Move to a separate function so it can be skipped by setting
+ $TEST_SKIP_PAT.
+Files: src/testdir/test_vim9_expr.vim, src/testdir/runtest.vim
+
+Patch 8.2.3312
+Problem: Vim9: after "if false" line breaks in expression not skipped.
+Solution: Do parse the expression. (closes #8723)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3313
+Problem: Unused code in win_exchange() and frame_remove().
+Solution: Remove the code. (closes #8728)
+Files: src/window.c
+
+Patch 8.2.3314
+Problem: Behavior of exists() in a :def function is unpredictable.
+Solution: Add exists_compiled().
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/errors.h, src/vim9compile.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3315
+Problem: Cannot use single quote in a float number for readability.
+Solution: Support single quotes like in numbers. (closes #8713)
+Files: src/typval.c, src/float.c, src/proto/float.pro, src/json.c,
+ src/viminfo.c, src/testdir/test_float_func.vim
+
+Patch 8.2.3316 (after 8.2.3315)
+Problem: Float test fails.
+Solution: Add missing change.
+Files: src/evalfunc.c
+
+Patch 8.2.3317
+Problem: Vim9: No error for missing white space before return type.
+Solution: Check for white space. (closes #8733)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3318
+Problem: Vim9: cannot ignore quotes in number at the command line.
+Solution: Use in_vim9script() so that after ":vim9" quotes are ignored.
+Files: src/typval.c, src/testdir/test_float_func.vim
+
+Patch 8.2.3319
+Problem: Coverity action on github does not work.
+Solution: Remove undefined $SRCDIR. (James McCoy, closes #8739)
+Files: .github/workflows/coverity.yml
+
+Patch 8.2.3320
+Problem: Some local functions are not static.
+Solution: Add "static". Move snprintf() related code to strings.c.
+ (Yegappan Lakshmanan, closes #8734)
+Files: src/alloc.c, src/channel.c, src/dict.c, src/digraph.c, src/edit.c,
+ src/ex_docmd.c, src/getchar.c, src/job.c, src/list.c,
+ src/message.c, src/profiler.c, src/proto/channel.pro,
+ src/proto/dict.pro, src/proto/digraph.pro, src/proto/edit.pro,
+ src/proto/ex_docmd.pro, src/proto/getchar.pro, src/proto/job.pro,
+ src/proto/list.pro, src/proto/profiler.pro, src/proto/spell.pro,
+ src/proto/vim9compile.pro, src/proto/vim9script.pro,
+ src/proto/vim9type.pro, src/spell.c, src/strings.c,
+ src/vim9compile.c, src/vim9script.c, src/vim9type.c, src/window.c
+
+Patch 8.2.3321
+Problem: Some code is not tested.
+Solution: Add some more tests. (Dominique Pellé, closes #8735)
+Files: src/testdir/test_excmd.vim, src/testdir/test_writefile.vim
+
+Patch 8.2.3322
+Problem: Vim9: checking type of dict does not check member type.
+Solution: When getting the type of a typval use dv_type and lv_type.
+ (closes #8732)
+Files: src/vim9type.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3323
+Problem: Help tag for exists_compiled() is wrong. (Maxim Kim)
+Solution: Adjust the help tag.
+Files: runtime/doc/eval.txt
+
+Patch 8.2.3324
+Problem: Vim9: Cannot use :silent with :endwhile.
+Solution: Allow for using the :silent modifier. (closes #8737)
+Files: src/ex_eval.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3325
+Problem: Digraph test fails when LC_ALL is set to "C".
+Solution: When restoring 'encoding' set it to "utf-8". (closes #8742)
+Files: src/testdir/test_digraph.vim
+
+Patch 8.2.3326
+Problem: Vim9: no error passing an empty list of the wrong type.
+Solution: Use ISN_SETTYPE also for "list<any>". (closes #8732)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3327
+Problem: No check for sysconf() failing.
+Solution: If sysconf() fails use SIGSTKSZ for the signal stack size.
+ (Zdenek Dohnal, closes #8743)
+Files: src/os_unix.c
+
+Patch 8.2.3328
+Problem: Coverity error for not checking return value.
+Solution: Check value is not negative.
+Files: src/spellfile.c
+
+Patch 8.2.3329
+Problem: v_lock not set when getting value of environment variable.
+Solution: Set v_lock to zero.
+Files: src/typval.c
+
+Patch 8.2.3330
+Problem: Coverity reports using uninitialized field.
+Solution: Initialize the field early.
+Files: src/tag.c
+
+Patch 8.2.3331
+Problem: Coverity warns for using value without boundary check.
+Solution: Add a boundary check.
+Files: src/viminfo.c
+
+Patch 8.2.3332
+Problem: Vim9: cannot assign to range in list.
+Solution: Implement overwriting a list range.
+Files: src/vim9compile.c, src/vim9execute.c, src/list.c,
+ src/proto/list.pro, src/eval.c, src/proto/eval.pro,
+ src/testdir/test_listdict.vim, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3333
+Problem: Vim9: not enough tests run with Vim9.
+Solution: Run a few more tests in Vim9 script and :def function.
+Files: src/testdir/test_listdict.vim, src/testdir/vim9.vim
+
+Patch 8.2.3334
+Problem: Vim9: not enough tests run with Vim9.
+Solution: Run a few more tests in Vim9 script and :def function. Fix
+ islocked(). Fix error for locking local variable.
+Files: src/evalfunc.c, src/vim9compile.c, src/testdir/test_listdict.vim
+
+Patch 8.2.3335
+Problem: Vim9: not enough tests run with Vim9.
+Solution: Run a few more tests in Vim9 script and :def function. Fix that
+ items(), keys() and values() return zero for a NULL dict.
+ Make join() return an empty string for a NULL list. Make sort()
+ return an empty list for a NULL list.
+Files: src/dict.c, src/list.c, src/testdir/test_listdict.vim,
+ src/testdir/vim9.vim
+
+Patch 8.2.3336
+Problem: Behavior of negative index in list change changed. (Naruhiko
+ Nishino)
+Solution: Only change it for Vim9 script. (closes #8749)
+Files: src/list.c, src/testdir/test_listdict.vim
+
+Patch 8.2.3337
+Problem: Completing "call g:" returns entries with just "g:". (Naohiro Ono)
+Solution: Skip empty strings returned by get_user_func_name(). (closes #8753)
+Files: src/evalfunc.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3338
+Problem: Vim9: no type check when assigning a list range. (Naohiro Ono)
+Solution: Check the member type. (closes #8750)
+Files: src/list.c, src/testdir/test_listdict.vim
+
+Patch 8.2.3339
+Problem: Vim9: cannot lock a member in a local dict.
+Solution: Get the local dict from the stack and pass it to get_lval().
+Files: src/eval.c, src/vim9execute.c, src/vim9compile.c, src/vim9.h,
+ src/globals.h, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3340 (after 8.2.3339)
+Problem: Accessing uninitialized pointer.
+Solution: Set pointer to NULL.
+Files: src/eval.c
+
+Patch 8.2.3341
+Problem: Vim9: function call aborted despite try/catch. (Naohiro Ono)
+Solution: Ignore error caught by try/catch. (closes #8755)
+Files: src/evalvars.c, src/vim9execute.c, src/message.c, src/time.c,
+ src/globals.h, src/testdir/vim9.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3342 (after 8.2.3341)
+Problem: Test for :let errors fails.
+Solution: Adjust the test and how to avoid a second error message.
+Files: src/evalvars.c, src/testdir/test_let.vim
+
+Patch 8.2.3343 (after 8.2.3342)
+Problem: Vim9: autoload test fails.
+Solution: Adjust the way the second message is avoided
+Files: src/evalvars.c
+
+Patch 8.2.3344 (after 8.2.3343)
+Problem: Vimscript test fails.
+Solution: Have test verify first error instead of second
+Files: src/testdir/test_vimscript.vim
+
+Patch 8.2.3345
+Problem: Some code not covered by tests.
+Solution: Add a few more tests. (Dominique Pellé, closes #8757)
+Files: src/testdir/test_arglist.vim, src/testdir/test_cmdline.vim,
+ src/testdir/test_spellfile.vim, src/testdir/test_substitute.vim
+
+Patch 8.2.3346
+Problem: Vim9: no error for using "." for concatenation after ":vim9cmd".
+ (Naohiro Ono)
+Solution: Check for Vim9 script syntax. (closes #8756)
+Files: src/eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3347
+Problem: Check for legacy script is incomplete. (Naohiro Ono)
+Solution: Also check the :legacy modifier. Use for string concatenation
+ with "." and others (issue #8756)
+Files: src/vim9script.c, src/proto/vim9script.pro, src/eval.c,
+ src/typval.c, src/evalvars.c, src/errors.h, src/ex_docmd.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3348
+Problem: line2byte() returns wrong value after adding textprop. (Yuto
+ Kimura)
+Solution: Reduce the length by the size of the text property. (closes #8759)
+Files: src/memline.c, src/testdir/test_textprop.vim
+
+Patch 8.2.3349 (after 8.2.3347)
+Problem: Eval test for scriptversion fails.
+Solution: Fix off-by-one error.
+Files: src/vim9script.c
+
+Patch 8.2.3350 (after 8.2.3348)
+Problem: Text properties test fails on MS-Windows.
+Solution: Set fileformat to unix.
+Files: src/testdir/test_textprop.vim
+
+Patch 8.2.3351
+Problem: Vim9: using a function by name may delete it. (Naohiro Ono)
+Solution: Increment the reference count when using a function by name.
+ (closes #8760)
+Files: src/evalvars.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3352
+Problem: Vim9: error for nested :enddef has wrong line number.
+Solution: Compute the line number.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3353
+Problem: Vim9: type of argument for negate not checked at compile time.
+Solution: Add a compile time check.
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3354
+Problem: Build failure with +byte_offset but without +textprop. (John
+ Marriott)
+Solution: Adjust the #ifdef.
+Files: src/memline.c
+
+Patch 8.2.3355
+Problem: MS-Windows: compiler warning for 64-32 bit conversion.
+Solution: Add type casts.
+Files: src/memline.c
+
+Patch 8.2.3356
+Problem: Adding many text properties requires a lot of function calls.
+Solution: Add the prop_add_list() function. (Yegappan Lakshmanan,
+ closes #8751)
+Files: runtime/doc/eval.txt, runtime/doc/textprop.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/textprop.pro,
+ src/testdir/test_textprop.vim, src/testdir/test_vim9_builtin.vim,
+ src/textprop.c
+
+Patch 8.2.3357
+Problem: Crash when 'virtualedit' is set and window is narrow.
+Solution: Check that width is not zero. (closes #8767)
+Files: src/misc2.c, src/testdir/test_number.vim
+
+Patch 8.2.3358
+Problem: Structurizr files are not recognized.
+Solution: Recognize the file by contents. (Bastian Venthur, closes #8764)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3359
+Problem: Vim9: error for type when variable is not set.
+Solution: Give a specific error for a NULL function. (closes #8773)
+Files: src/vim9type.c, src/errors.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3360
+Problem: User function completion fails with dict function.
+Solution: Do not stop sequencing through the list if user functions when
+ encountering an empty name. (Naohiro Ono, closes #8765,
+ closes #8774)
+Files: src/evalfunc.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3361
+Problem: Vim9: crash with nested :while.
+Solution: Handle skipping better. (Naruhiko Nishino, closes #8778)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3362
+Problem: Buffer overflow when completing long tag name.
+Solution: Allocate the buffer dynamically. (Gregory Anders, closes #8769)
+Files: src/tag.c, src/testdir/test_tagjump.vim
+
+Patch 8.2.3363
+Problem: When :edit reuses the current buffer the alternate file is set to
+ the same buffer.
+Solution: Only set the alternate file when not reusing the buffer.
+ (closes #8783)
+Files: src/ex_cmds.c, src/testdir/test_undo.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3364
+Problem: Vim9: crash when :for is skipped.
+Solution: Skip more code generation. (Naruhiko Nishino, closes #8777)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3365
+Problem: Vim9: cannot use option for all operations.
+Solution: Recognize more operations. (closes #8779)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/ex_docmd.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3366
+Problem: Vim9: debugging elseif does not stop before condition.
+Solution: Move debug statement to after the jump. (closes #8781)
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3367
+Problem: Vim9: :@r executing a register is inconsistent.
+Solution: Use "@r" as the start of an expression. (issue #8779)
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3368
+Problem: Not all Racket files are recognized.
+Solution: Also recognize .rktl and .rktd files. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3369
+Problem: Auto formatting after "cw" leaves cursor in wrong spot.
+Solution: Do not auto-format after the delete. (closes #8789)
+Files: src/ops.c, src/testdir/test_textformat.vim
+
+Patch 8.2.3370
+Problem: Vim9: no check for white space before type in declaration.
+ (Naohiro Ono)
+Solution: Check for white space like in a compiled function. (closes #8785)
+Files: src/eval.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3371
+Problem: Vim9: :$ENV cannot be followed by ->func() in next line.
+Solution: Use "$ENV" as the start of an expression. (closes #8790)
+Files: src/ex_docmd.c, src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3372
+Problem: line2byte() value wrong when adding a text property. (Yuto Kimura)
+Solution: Adjust length for text property. (closes #8772) Also fix it for
+ deleting a line.
+Files: src/memline.c, src/testdir/test_textprop.vim
+
+Patch 8.2.3373 (after 8.2.3372)
+Problem: text property test fails on MS-Windows.
+Solution: Set fileformat to "unix"
+Files: src/testdir/test_textprop.vim
+
+Patch 8.2.3374
+Problem: Pyret files are not recognized.
+Solution: Recognize .arr files as Pyret. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3375
+Problem: Using uninitialized memory.
+Solution: Initialize textprop_save_len.
+Files: src/memline.c
+
+Patch 8.2.3376
+Problem: Vim9: no warning that "@r" does not do anything.
+Solution: Give a "no effect" error. (closes #8779)
+Files: src/ex_eval.c, src/proto/ex_eval.pro, src/vim9compile.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3377
+Problem: Vim9: :disass completion does not understand "s:".
+Solution: Expand "s:" to a pattern. (closes #8780)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3378
+Problem: MS-Windows: completing environment variables with % is wrong.
+Solution: Only complete environment variables with $. (Albert Liu,
+ closes #8791)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3379
+Problem: Crash when using NULL job.
+Solution: Copy static string into buffer. (issue #8260)
+Files: src/job.c, src/testdir/test_channel.vim
+
+Patch 8.2.3380
+Problem: Crash when using NULL string for funcref().
+Solution: Check for NULL argument. (issue #8260)
+Files: src/evalfunc.c, src/testdir/test_expr.vim
+
+Patch 8.2.3381
+Problem: Crash when using NULL list with sign functions.
+Solution: Handle a NULL list like an empty list. (issue #8260)
+Files: src/globals.h, src/testdir/test_signs.vim
+
+Patch 8.2.3382
+Problem: Crash when getting the type of a NULL partial.
+Solution: Check for NULL. (closes #8260)
+Files: src/vim9type.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3383
+Problem: Vim9: completion for :disassemble adds parenthesis.
+Solution: Don't add parenthesis. (Naohiro Ono, closes #8802)
+Files: src/userfunc.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3384
+Problem: Cannot disable modeline for an individual file.
+Solution: Recognize "nomodeline" in a modeline. (Hu Jialun, closes #8798)
+Files: runtime/doc/options.txt, src/buffer.c,
+ src/testdir/test_modeline.vim
+
+Patch 8.2.3385
+Problem: Escaping for fish shell does not work properly.
+Solution: Insert a backslash before a backslash. (Jason Cox, closes #8810)
+Files: runtime/doc/eval.txt, src/strings.c, src/testdir/test_shell.vim
+
+Patch 8.2.3386
+Problem: Using uninitialized memory.
+Solution: Initialize the rm_ic field. (Dominique Pellé, closes #8800)
+Files: src/indent.c
+
+Patch 8.2.3387
+Problem: Compiler warning for non-static function.
+Solution: Make the function static. (Dominique Pellé, closes #8816)
+Files: src/strings.c
+
+Patch 8.2.3388
+Problem: fnamemodify('path/..', ':p') differs from using 'path/../'. (David
+ Briscoe)
+Solution: Include the "/.." in the directory name. (closes #8808)
+Files: src/os_unix.c, src/testdir/test_fnamemodify.vim
+
+Patch 8.2.3389
+Problem: Cannot stop insert mode completion without side effects.
+Solution: Add CTRL-X CTRL-Z. (closes #8821)
+Files: runtime/doc/index.txt, runtime/doc/insert.txt, src/insexpand.c,
+ src/testdir/test_ins_complete.vim
+
+Patch 8.2.3390
+Problem: Included xdiff code is outdated.
+Solution: Sync with xdiff in git 2.33. (Christian Brabandt, closes #8431)
+Files: src/diff.c, src/xdiff/README.txt, src/xdiff/xdiff.h,
+ src/xdiff/xdiffi.c, src/xdiff/xdiffi.h, src/xdiff/xemit.c,
+ src/xdiff/xemit.h, src/xdiff/xhistogram.c, src/xdiff/xinclude.h,
+ src/xdiff/xmacros.h, src/xdiff/xpatience.c, src/xdiff/xprepare.h,
+ src/xdiff/xtypes.h, src/xdiff/xutils.c, src/xdiff/xutils.h
+
+Patch 8.2.3391
+Problem: Crash with combination of 'linebreak' and other options.
+Solution: Avoid n_extra to become negative. (Christian Brabandt,
+ closes #8817)
+Files: src/drawline.c
+
+Patch 8.2.3392
+Problem: augroup completion escapes regexp pattern characters.
+Solution: Do not escape the augroup name. (closes #8826)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3393
+Problem: Escaping for fish shell is skipping some characters.
+Solution: Escape character after backslash if needed. (Jason Cox,
+ closes #8827)
+Files: src/strings.c, src/testdir/test_shell.vim
+
+Patch 8.2.3394
+Problem: Filler lines are wrong when changing text in diff mode.
+Solution: Don't change the filler lines on every change. Check
+ scrollbinding when updating the filler lines. (closes #8809)
+Files: src/move.c, src/diff.c, src/testdir/test_diffmode.vim,
+ src/testdir/dumps/Test_diff_scroll_change_01.dump,
+ src/testdir/dumps/Test_diff_scroll_change_02.dump
+
+Patch 8.2.3395
+Problem: Vim9: expression breakpoint not checked in :def function.
+Solution: Always compile a function for debugging if there is an expression
+ breakpoint. (closes #8803)
+Files: src/vim9execute.c, src/proto/vim9execute.pro, src/debugger.c,
+ src/proto/debugger.pro, src/vim.h, src/vim9.h,
+ src/testdir/test_debugger.vim
+
+Patch 8.2.3396
+Problem: When libcall() fails invalid pointer may be used.
+Solution: Initialize the string to NULL. (Yasuhiro Matsumoto, closes #8829)
+Files: src/evalfunc.c
+
+Patch 8.2.3397
+Problem: No test for what 8.2.3391 fixes.
+Solution: Add a test. (Yegappan Lakshmanan, closes #8828)
+Files: src/testdir/test_breakindent.vim
+
+Patch 8.2.3398
+Problem: Html text objects are not fully tested.
+Solution: Add tests for dbcs encoding and different number of backslashes.
+ (Dominique Pellé, closes #8831)
+Files: src/testdir/test_textobjects.vim
+
+Patch 8.2.3399
+Problem: Octave files are not recognized.
+Solution: Detect Octave files. (Doug Kearns)
+Files: runtime/autoload/dist/ft.vim, runtime/doc/filetype.txt,
+ runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3400
+Problem: ":z!" is not supported.
+Solution: Make ":z!" work and add tests. (Dominique Pellé, closes #8836)
+ Use display height instead of current window height.
+Files: runtime/doc/various.txt, src/ex_cmds.h, src/ex_cmds.c,
+ src/testdir/test_ex_z.vim
+
+Patch 8.2.3401
+Problem: Vim9: cannot use a negative count with finddir() and findfile().
+Solution: Adjust the return type. (closes #8776)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3402
+Problem: Invalid memory access when using :retab with large value.
+Solution: Check the number is positive.
+Files: src/indent.c, src/option.c, src/optionstr.c,
+ src/testdir/test_retab.vim
+
+Patch 8.2.3403 (after 8.2.3402)
+Problem: Memory leak for :retab with invalid argument.
+Solution: Free the memory. Make error messages consistent.
+Files: src/indent.c
+
+Patch 8.2.3404
+Problem: Vim9: no error for white space before "(".
+Solution: Give an error, like in a compiled function.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3405
+Problem: Cannot have a comment line in a {} block of a user command.
+Solution: Continue after the line break. (closes #8837)
+Files: src/ex_docmd.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.3406
+Problem: On some systems tests fail without _REENTRANT. (Elimar
+ Riesebieter)
+Solution: Add -D_REENTRANT in configure. (closes #7402)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.3407
+Problem: Using uninitialized memory with "let g:['bar'] = 2".
+Solution: Initialize v_type of a new dict item.
+Files: src/dict.c
+
+Patch 8.2.3408
+Problem: Can delete a numbered function. (Naohiro Ono)
+Solution: Disallow deleting a numbered function. (closes #8760)
+Files: src/userfunc.c, src/testdir/test_user_func.vim
+
+Patch 8.2.3409
+Problem: Reading beyond end of line with invalid utf-8 character.
+Solution: Check for NUL when advancing.
+Files: src/regexp_nfa.c, src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.3410
+Problem: Crash with linebreak, listchars and large tabstop.
+Solution: Account for different size listchars for a tab. (closes #8841)
+Files: src/drawline.c, src/testdir/test_listlbr_utf8.vim
+
+Patch 8.2.3411
+Problem: Vim9: crash when using base name of import. (Naohiro Ono)
+Solution: Check the import flags. (closes #8843)
+Files: src/evalvars.c, src/errors.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3412 (after 8.2.3411)
+Problem: Vim9: importing the wrong file.
+Solution: Correct the file name. Delete the file afterwards.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.3413
+Problem: Vim9: too many characters are allowed in import name.
+Solution: Disallow ':' and '#', check for white space. (closes #8845)
+Files: src/vim9script.c, src/errors.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3414
+Problem: fullcommand() gives the wrong name if there is a buffer-local user
+ command. (Naohiro Ono)
+Solution: Use a separate function to get the user command name.
+ (closes #8840)
+Files: src/usercmd.c, src/proto/usercmd.pro, src/ex_docmd.c,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.3415
+Problem: Vim9: Not all function argument types are properly checked.
+Solution: Add and improve argument type checks. (Yegappan Lakshmanan,
+ closes #8839)
+Files: src/channel.c, src/digraph.c, src/evalfunc.c, src/terminal.c,
+ src/testdir/test_digraph.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3416
+Problem: Second error is reported while exception is being thrown.
+Solution: Do not check for trailing characters when already aborting.
+ (closes #8842)
+Files: src/userfunc.c, src/testdir/test_trycatch.vim
+
+Patch 8.2.3417
+Problem: Vim9: a failing debug expression aborts script sourcing.
+Solution: Do not let expression failure abort script sourcing. (closes #8848)
+Files: src/debugger.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3418
+Problem: Garbage collection while evaluating may cause trouble.
+Solution: Disable garbage collection while evaluating an expression.
+ (Christian Brabandt, issue #8848)
+Files: src/eval.c
+
+Patch 8.2.3419
+Problem: A failing debug expression may make Vim unusable.
+Solution: Suppress error messages. (closes #8848)
+Files: src/debugger.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3420
+Problem: _REENTRANT defined more than once.
+Solution: Fix configure script. (Christian Brabandt, closes #8852)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.3421
+Problem: A bit of code is not covered by tests.
+Solution: Add a few more test cases. (Dominique Pellé, closes #8857)
+Files: src/testdir/test_functions.vim, src/testdir/test_history.vim,
+ src/testdir/test_startup.vim
+
+Patch 8.2.3422
+Problem: Vim9: no failure if return type differs from returned variable.
+Solution: Copy type when copying a list. (closes #8847)
+Files: src/list.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3423
+Problem: Vim9: list += list creates a new list in :def function.
+Solution: Append to the existing list.
+Files: src/structs.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3424
+Problem: A sequence of spaces is hard to see in list mode.
+Solution: Add the "multispace" option to 'listchars'. (closes #8834)
+Files: runtime/doc/options.txt, src/drawline.c, src/message.c,
+ src/screen.c, src/structs.h, src/testdir/test_listchars.vim
+
+Patch 8.2.3425
+Problem: Warning for using uninitialized variable.
+Solution: Initialize it. (John Marriott)
+Files: src/screen.c
+
+Patch 8.2.3426
+Problem: Crash when deleting a listener in a listener callback. (Naohiro
+ Ono)
+Solution: Mark the listener and delete it later. (closes #8863)
+Files: src/change.c, src/testdir/test_listener.vim
+
+Patch 8.2.3427
+Problem: Double free when list is copied.
+Solution: Allocate the type when making a copy. (closes #8862)
+ Clear the type for flattennew(). Avoid a memory leak when
+ flattennew() fails.
+Files: src/list.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3428
+Problem: Using freed memory when replacing. (Dhiraj Mishra)
+Solution: Get the line pointer after calling ins_copychar().
+Files: src/normal.c, src/testdir/test_edit.vim
+
+Patch 8.2.3429
+Problem: Leaking memory when assigning to list or dict.
+Solution: Free the list or dict type before overwriting it.
+Files: src/vim9type.c, src/evalvars.c
+
+Patch 8.2.3430
+Problem: No generic way to trigger an autocommand on mode change.
+Solution: Add the ModeChanged autocommand event. (Magnus Gross, closes #8856)
+Files: runtime/doc/autocmd.txt, src/autocmd.c, src/edit.c,
+ src/ex_docmd.c, src/ex_getln.c, src/globals.h, src/misc1.c,
+ src/normal.c, src/proto/autocmd.pro, src/proto/misc1.pro,
+ src/testdir/test_edit.vim, src/vim.h
+
+Patch 8.2.3431
+Problem: Completion for :disas sorts local functions first.
+Solution: Sort local functions last, like with :delfunc. (Naohiro Ono,
+ closes #8860)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3432
+Problem: Octave/Matlab filetype detection does not work properly.
+Solution: Update the patterns used for matching. (Doug Kearns)
+Files: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3433
+Problem: :delcommand does not take a -buffer option.
+Solution: Add the -buffer option.
+Files: runtime/doc/map.txt, src/usercmd.c, src/errors.h,
+ src/testdir/test_usercommands.vim
+
+Patch 8.2.3434 (after 8.2.3430)
+Problem: Function prototype for trigger_modechanged() is incomplete.
+Solution: Add "void".
+Files: src/proto/misc1.pro
+
+Patch 8.2.3435
+Problem: Vim9: dict is not passed to dict function.
+Solution: Keep the dict used until a function call.
+Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h,
+ src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3436
+Problem: Check for optional bool type has confusing return type.
+Solution: Explicitly return OK.
+Files: src/typval.c
+
+Patch 8.2.3437
+Problem: Compiler warnings for 32/64 bit usage.
+Solution: Add type casts. (Mike Williams, closes #8870)
+Files: src/screen.c, src/xdiff/xemit.c, src/xdiff/xutils.c
+
+Patch 8.2.3438
+Problem: Cannot manipulate blobs.
+Solution: Add blob2list() and list2blob(). (Yegappan Lakshmanan,
+ closes #8868)
+Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/blob.c,
+ src/errors.h, src/evalfunc.c, src/proto/blob.pro,
+ src/proto/typval.pro, src/testdir/test_blob.vim,
+ src/testdir/test_vim9_builtin.vim, src/typval.c
+
+Patch 8.2.3439
+Problem: Deleted lines go to wrong yank register.
+Solution: Reset y_append when not calling get_yank_register(). (Christian
+ Brabandt, closes #8872)
+Files: src/ops.c, src/proto/register.pro, src/register.c,
+ src/testdir/test_registers.vim
+
+Patch 8.2.3440
+Problem: Recover test fails if there is an old swap file.
+Solution: Delete old swap files.
+Files: src/testdir/test_recover.vim
+
+Patch 8.2.3441
+Problem: MS-Windows: vimtutor can't handle path with spaces.
+Solution: Add double quotes. (Christian Brabandt, closes #8871)
+Files: vimtutor.bat
+
+Patch 8.2.3442
+Problem: Vim9: || and && are not handled at compile time when possible.
+Solution: When using constants generate fewer instructions.
+Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3443
+Problem: Vim9: memory leak when and/or fails.
+Solution: Also clear the growarray when the length is zero.
+Files: src/vim9compile.c
+
+Patch 8.2.3444
+Problem: concealed text not revealed when leaving insert mode. (Michael
+ Soyka)
+Solution: Check if concealing changed when leaving insert mode.
+ (closes #8880)
+Files: src/edit.c, src/testdir/test_conceal.vim,
+ src/testdir/dumps/Test_conceal_two_windows_07in.dump
+
+Patch 8.2.3445
+Problem: On Solaris longVersion may be declared twice. (Vladimir Marek)
+Solution: Always declare longVersion in version.c
+Files: src/globals.h, src/version.c
+
+Patch 8.2.3446
+Problem: Not enough tests for empty string arguments.
+Solution: Add tests, fix type check. (Yegappan Lakshmanan, closes #8881)
+Files: runtime/doc/sign.txt, runtime/doc/textprop.txt, src/sign.c,
+ src/testdir/test_blob.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3447
+Problem: A couple of declarations are not ANSI C.
+Solution: Put argument type inside (). (Yegappan Lakshmanan, closes #8890)
+Files: src/os_unix.h
+
+Patch 8.2.3448
+Problem: :endtry after function call that throws not found.
+Solution: Do check for following :endtry if an exception is being thrown.
+ (closes #8889)
+Files: src/userfunc.c, src/testdir/test_trycatch.vim
+
+Patch 8.2.3449
+Problem: Sort fails if the sort compare function returns 999.
+Solution: Adjust value to -1 / 0 / 1. (Yasuhiro Matsumoto, closes #8884)
+Files: src/list.c, src/testdir/test_sort.vim
+
+Patch 8.2.3450
+Problem: Coveralls action fails.
+Solution: Disable it for now.
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3451
+Problem: Not all apache files are recognized.
+Solution: Adjust the filetype pattern. (Zdenek Dohnal, closes #8882)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3452
+Problem: MPD files are not recognized.
+Solution: Recognize MPD files as XML. (Steven Penny, closes #8893)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3453
+Problem: Autocmd not executed when editing a directory ending in a path
+ separator inside try block.
+Solution: Return NOTDONE instead of FAIL. (closes #8885)
+Files: src/fileio.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.3454
+Problem: Using a count with "gp" leaves cursor in wrong position. (Naohiro
+ Ono)
+Solution: Count the inserted lines. (closes #8899)
+Files: src/register.c, src/testdir/test_put.vim
+
+Patch 8.2.3455 (after 8.2.3454)
+Problem: Using a count with "gp" leaves '] in wrong position. (Naohiro Ono)
+Solution: Correct the mark position. (closes #8899)
+Files: src/register.c, src/testdir/test_put.vim
+
+Patch 8.2.3456
+Problem: Vim9: Not all functions are tested with an empty string argument.
+Solution: Add tests with empty strings. (Yegappan Lakshmanan, closes #8915)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3457
+Problem: MS-Windows Vim9: test executed and fails.
+Solution: Add extra check for not being on MS-Windows.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.3458
+Problem: Not all dictdconf files are recognized.
+Solution: Adjust the pattern. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3459
+Problem: Vim9: need more tests for empty string arguments.
+Solution: Add more tests. Also use empty argument with menu_info() to get
+ the top-level menu names. (Yegappan Lakshmanan, closes #8925)
+Files: runtime/doc/eval.txt, src/menu.c, src/testdir/test_menu.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3460
+Problem: Some type casts are not needed.
+Solution: Remove unnecessary type casts. (closes #8934)
+Files: src/autocmd.c, src/buffer.c, src/debugger.c, src/getchar.c,
+ src/hardcopy.c, src/if_cscope.c, src/move.c, src/tag.c,
+ src/version.c
+
+Patch 8.2.3461
+Problem: Cannot distinguish Normal and Terminal-Normal mode.
+Solution: Make mode() return "nt" for Terminal-Normal mode. (issue #8856)
+Files: runtime/doc/eval.txt, src/misc1.c, src/testdir/test_functions.vim
+
+Patch 8.2.3462
+Problem: The ModeChanged event only uses one character for the new_mode and
+ old_mode values.
+Solution: Pass one as first argument to mode(). (issue #8856)
+Files: src/misc1.c, src/testdir/test_edit.vim
+
+Patch 8.2.3463
+Problem: Pattern matching with ModeChanged not tested.
+Solution: Add a few more test lines. (issue #8856)
+Files: src/testdir/test_edit.vim
+
+Patch 8.2.3464
+Problem: nginx files are not recognized.
+Solution: Add several file patterns. (Chris Aumann, closes #8922)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3465
+Problem: Cannot detect insert scroll mode.
+Solution: Add "scroll" to complete_info(). (closes #8943)
+Files: runtime/doc/eval.txt, src/insexpand.c, src/testdir/test_popup.vim
+
+Patch 8.2.3466
+Problem: Completion submode not indicated for virtual replace.
+Solution: Add submode to "Rv". (closes #8945)
+Files: runtime/doc/eval.txt, src/misc1.c, src/testdir/test_functions.vim
+
+Patch 8.2.3467
+Problem: CursorHoldI event interferes with "CTRL-G U". (Naohiro Ono)
+Solution: Restore the flag for "CTRL-G U" after triggering CursorHoldI.
+ (closes #8937)
+Files: src/edit.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.3468
+Problem: Problem with :cd when editing file in non-existent directory. (Yee
+ Cheng Chin)
+Solution: Prepend the current directory to get the full path. (closes #8903)
+Files: src/os_unix.c, src/testdir/test_cd.vim
+
+Patch 8.2.3469
+Problem: Some files with json syntax are not recognized.
+Solution: Add a few file patterns. (Emiliano Ruiz Carletti, closes #8947)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3470
+Problem: Crash with error in :catch and also in :finally.
+Solution: Only discard an exception if there is one. (closes #8954)
+Files: src/ex_eval.c, src/testdir/test_trycatch.vim
+
+Patch 8.2.3471
+Problem: Crash when using CTRL-T after an empty search pattern.
+Solution: Bail out when there is no previous search pattern. (closes #8953)
+Files: src/ex_getln.c, src/testdir/test_search.vim
+
+Patch 8.2.3472
+Problem: Other crashes with empty search pattern not tested.
+Solution: Add a few more test lines. (Dominique Pellé)
+Files: src/testdir/test_search.vim
+
+Patch 8.2.3473
+Problem: Some files with tcl syntax are not recognized.
+Solution: Add a few file patterns. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3474
+Problem: Some places use "Vimscript" instead of "Vim script".
+Solution: Consistently use "Vim script". (Hirohito Higashi, closes #8910)
+Files: runtime/doc/if_lua.txt, src/getchar.c, src/if_lua.c
+
+Patch 8.2.3475
+Problem: Expression register set by not executed put command.
+Solution: Do not set the register if the command is skipped. (closes #8909)
+Files: src/ex_docmd.c, src/testdir/test_excmd.vim
+
+Patch 8.2.3476
+Problem: Renaming a buffer on startup may cause using freed memory.
+Solution: Check if the buffer is used in a window. (closes #8955)
+Files: src/buffer.c, src/testdir/test_startup.vim
+
+Patch 8.2.3477 (after 8.2.3476)
+Problem: Startup test fails on MS-Windows.
+Solution: Skip the test if not on Unix.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.3478 (after 8.2.3470)
+Problem: Still crash with error in :catch and also in :finally.
+Solution: Only call finish_exception() once. (closes #8954)
+Files: src/ex_eval.c, src/structs.h
+
+Patch 8.2.3479
+Problem: Crash when calling job_start with an invalid argument. (Virginia
+ Senioria)
+Solution: Clear the first item in argv. (closes #8957)
+Files: src/misc2.c, src/testdir/test_channel.vim
+
+Patch 8.2.3480 (after 8.2.3478)
+Problem: Test does not fail without the fix for a crash.
+Solution: Write the bad code in a file and source it. (Dominique Pellé,
+ closes #8961)
+Files: src/testdir/test_trycatch.vim
+
+Patch 8.2.3481
+Problem: Failures when char is unsigned.
+Solution: Use int8_T. Make a CI run with unsigned char. (James McCoy,
+ closes #8936)
+Files: src/structs.h, .github/workflows/ci.yml
+
+Patch 8.2.3482
+Problem: Reading beyond end of line ending in quote and backslash.
+Solution: Check for non-NUL after backslash. (closes #8964)
+Files: src/cindent.c, src/testdir/test_cindent.vim
+
+Patch 8.2.3483
+Problem: #ifdef for using sysinfo() is incomplete.
+Solution: Also check for HAVE_SYSINFO. Make autoconf check use TRY_LINK.
+ (closes #8952)
+Files: src/memline.c, src/configure.ac, src/auto/configure
+
+Patch 8.2.3484
+Problem: Crash when going through spell suggestions.
+Solution: Limit the text length for finding suggestions to the original
+ length. Do not update buffers when exiting. (closes #8965)
+Files: src/spellsuggest.c, src/clipboard.c,
+ src/testdir/test_spell_utf8.vim
+
+Patch 8.2.3485
+Problem: Python 3 test fails with Python 3.10.
+Solution: Adjust expected error message. (zdohnal Dohnal, closes #8969)
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.3486
+Problem: Illegal memory access with invalid sequence of commands.
+Solution: Do not call leave_block() when not in a try block. (closes #8966)
+ Reset did_emsg so that exception is shown as an error.
+Files: src/ex_eval.c, src/testdir/test_trycatch.vim
+
+Patch 8.2.3487
+Problem: Illegal memory access if buffer name is very long.
+Solution: Make sure not to go over the end of the buffer.
+Files: src/drawscreen.c, src/testdir/test_statusline.vim
+
+Patch 8.2.3488
+Problem: Issue template is not easy to use.
+Solution: Use a yaml template. (closes #8928)
+Files: .github/ISSUE_TEMPLATE/bug_report.md,
+ .github/ISSUE_TEMPLATE/bug_report.yml
+
+Patch 8.2.3489
+Problem: ml_get error after search with range.
+Solution: Limit the line number to the buffer line count.
+Files: src/ex_docmd.c, src/testdir/test_search.vim
+
+Patch 8.2.3490
+Problem: Superfluous return statements.
+Solution: Remove superfluous return statements from void functions.
+ (closes #8977)
+Files: src/buffer.c, src/getchar.c, src/memline.c, src/move.c,
+ src/option.c
+
+Patch 8.2.3491
+Problem: xpm2 filetype detection is not so good.
+Solution: Adjust the check for xpm2. (closes #8914)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3492
+Problem: Crash when pasting too many times.
+Solution: Limit the size to what fits in an int. (closes #8962)
+Files: src/register.c, src/errors.h, src/testdir/test_put.vim
+
+Patch 8.2.3493 (after 8.2.3492)
+Problem: Large count test fails on MS-Windows.
+Solution: Skip the test on MS-Windows.
+Files: src/testdir/test_put.vim
+
+Patch 8.2.3494
+Problem: Illegal memory access in utf_head_off.
+Solution: Check cursor position when reselecting the Visual area.
+ (closes #8963)
+Files: src/normal.c, src/testdir/test_visual.vim
+
+Patch 8.2.3495
+Problem: GUI geometry startup test fails on some systems. (Drew Vogel)
+Solution: Add tolerance to the size check. (closes #8815)
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.3496
+Problem: Crypt test fails on MS-Windows if xxd was not installed yet.
+Solution: Use the just built xxd executable if it exists. (James McCoy,
+ closes #8929)
+Files: src/testdir/test_crypt.vim
+
+Patch 8.2.3497
+Problem: Put test fails when run by itself.
+Solution: Source check.vim. (Dominique Pellé, closes #8990)
+Files: src/testdir/test_put.vim
+
+Patch 8.2.3498
+Problem: Recover test may fail on some systems.
+Solution: Adjust the little endian and 64 bit detection. (James McCoy,
+ closes #8941)
+Files: src/testdir/test_recover.vim
+
+Patch 8.2.3499
+Problem: GUI geometry startup test fails.
+Solution: Check string values instead of numbers
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.3500
+Problem: Github CI fails to install clang.
+Solution: Install llvm-11 explicitly. (Christian Brabandt, closes #8993)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3501
+Problem: tmux filetype detection is incomplete
+Solution: Also use tmux for files having text after .conf. (Eric Pruitt,
+ closes #8971)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3502 (after 8.2.2919)
+Problem: Cannot enter password in shell command.
+Solution: Revert patch 8.2.2919.
+Files: src/os_unix.c
+
+Patch 8.2.3503
+Problem: Vim9: using g:pat:cmd is confusing.
+Solution: Do not recognize g: as the :global command. Also for s:pat:repl.
+ (closes #8982)
+Files: runtime/doc/vim9.txt, src/ex_docmd.c, src/ex_cmds.c, src/errors.h,
+ src/vim9compile.c, src/proto/vim9compile.pro,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3504 (after 8.2.3503)
+Problem: Vim9: warning for signed vs unsigned.
+Solution: Add type cast.
+Files: src/vim9compile.c
+
+Patch 8.2.3505 (after 8.2.3503)
+Problem: Vim9: build failure without the +eval feature.
+Solution: Add #ifdef.
+Files: src/ex_cmds.c
+
+Patch 8.2.3506 (after 8.2.3503)
+Problem: Vim9: special cases for "g" and "s" insufficiently tested.
+Solution: Add a few more test cases.
+Files: src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3507
+Problem: Generating proto files may fail.
+Solution: Define __attribute().
+Files: src/Makefile
+
+Patch 8.2.3508 (after 8.2.3503)
+Problem: Vim9: bad separators for "g" and "s" insufficiently tested.
+Solution: Add a few more test cases.
+Files: src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3509
+Problem: Undo file is not synced. (Sami Farin)
+Solution: Sync the undo file if 'fsync' is set. (Christian Brabandt,
+ closes #8879, closes #8920)
+Files: runtime/doc/options.txt, src/undo.c
+
+Patch 8.2.3510
+Problem: Changes are only detected with one second accuracy.
+Solution: Use the nanosecond time if possible. (Leah Neukirchen,
+ closes #8873, closes #8875)
+Files: runtime/doc/eval.txt, src/auto/configure, src/bufwrite.c,
+ src/config.h.in, src/configure.ac, src/fileio.c,
+ src/proto/fileio.pro, src/memline.c, src/netbeans.c,
+ src/structs.h, src/evalfunc.c, src/testdir/test_stat.vim
+
+Patch 8.2.3511
+Problem: Vim9: entry for loop variable is created every round.
+Solution: Only create the entry once. (closes #8996)
+Files: src/evalvars.c, src/vim9script.c
+
+Patch 8.2.3512
+Problem: Timestamp test fails on some systems.
+Solution: Sleep for a short while.
+Files: src/testdir/test_stat.vim
+
+Patch 8.2.3513
+Problem: Using freed memory when using a timer and searching. (Dominique
+ Pellé)
+Solution: Allocated mr_pattern.
+Files: src/search.c
+
+Patch 8.2.3514
+Problem: Autoread test with nanosecond time sometimes fails.
+Solution: Mark the test as being flaky.
+Files: src/testdir/test_stat.vim
+
+Patch 8.2.3515
+Problem: Nano time test fails on Mac and FreeBSD.
+Solution: Also check nano time when not on Linux. (Ozaki Kiichi,
+ closes #9000)
+Files: src/fileio.c
+
+Patch 8.2.3516
+Problem: Terminal window does not have transparent background when
+ 'termguicolors' is used.
+Solution: Fix the background color. (closes #2361, closes #9002)
+Files: runtime/doc/terminal.txt, src/highlight.c, src/proto/terminal.pro,
+ src/terminal.c
+
+Patch 8.2.3517
+Problem: TextChanged does not trigger after TextChangedI.
+Solution: Store the tick separately for TextChangedI. (Christian Brabandt,
+ closes #8968, closes #8932)
+Files: src/buffer.c, src/bufwrite.c, src/edit.c, src/structs.h,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.3518
+Problem: Test_xrestore sometimes fails.
+Solution: Mark the test as flaky. Move marking test as flaky to the test
+ instead of listing them in runtest.
+Files: src/testdir/test_paste.vim, src/testdir/runtest.vim,
+ src/testdir/test_autocmd.vim, src/testdir/test_channel.vim,
+ src/testdir/test_clientserver.vim, src/testdir/test_diffmode.vim,
+ src/testdir/test_functions.vim, src/testdir/test_gui.vim,
+ src/testdir/test_mapping.vim, src/testdir/test_popup.vim,
+ src/testdir/test_quotestar.vim, src/testdir/test_reltime.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_terminal2.vim,
+ src/testdir/test_timers.vim
+
+Patch 8.2.3519
+Problem: TOML files are not recognized.
+Solution: Add filetype patterns for TOML. (Aman Verma, closes #8984)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3520
+Problem: Cannot define a function for thesaurus completion.
+Solution: Add 'thesaurusfunc'. (Yegappan Lakshmanan, closes #8987,
+ closes 8950)
+Files: runtime/doc/insert.txt, runtime/doc/options.txt,
+ runtime/doc/quickref.txt, src/buffer.c, src/insexpand.c,
+ src/option.c, src/option.h, src/optiondefs.h, src/optionstr.c,
+ src/structs.h, src/testdir/test_edit.vim
+
+Patch 8.2.3521 (after 8.2.3520)
+Problem: Options completion test fails.
+Solution: Add 'thesaurusfunc' to the results.
+Files: src/testdir/test_options.vim
+
+Patch 8.2.3522
+Problem: Cannot use \x and \u when setting 'listchars'.
+Solution: Support hex and unicode in hex form. (closes #9006)
+Files: runtime/doc/options.txt, src/screen.c, src/charset.c,
+ src/testdir/test_listchars.vim
+
+Patch 8.2.3523
+Problem: Duplicated code in xxd.
+Solution: Remove duplicated lines. (closes #8972)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3524
+Problem: GUI: ligatures are not used.
+Solution: Add the 'guiligatures' option. (Dusan Popovic, closes #8933)
+Files: runtime/doc/options.txt, src/gui.c, src/gui.h, src/gui_gtk_x11.c,
+ src/option.h, src/optiondefs.h, src/optionstr.c, src/errors.h,
+ src/proto/gui.pro, src/proto/gui_gtk_x11.pro,
+ src/testdir/test_gui.vim
+
+Patch 8.2.3525
+Problem: Option variable name does not match option name. (Christ van
+ Willegen)
+Solution: Rename the variable.
+Files: src/buffer.c, src/insexpand.c, src/option.c, src/optionstr.c,
+ src/structs.h
+
+Patch 8.2.3526
+Problem: Tests have clumsy check for X11 based GUI.
+Solution: Add CheckX11BasedGui.
+Files: src/testdir/check.vim, src/testdir/test_gui.vim,
+ src/testdir/test_gui_init.vim, src/testdir/setup_gui.vim
+
+Patch 8.2.3527
+Problem: Gcc complains about uninitialized variable. (Tony Mechelynck)
+Solution: Initialize it.
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3528
+Problem: 'thesaurus' and 'thesaurusfunc' do not have the same scope.
+Solution: Make 'thesaurusfunc' global-local.
+Files: runtime/doc/options.txt, runtime/doc/insert.txt,
+ src/optiondefs.h, src/option.h, src/option.c, src/structs.h,
+ src/insexpand.c, src/testdir/test_edit.vim
+
+Patch 8.2.3529
+Problem: Xxd usage output is incomplete.
+Solution: Add "bytes" to "-g" flag. (Atsushi Sugawara, closes #8944)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3530
+Problem: ":buf \{a}" fails while ":edit \{a}" works.
+Solution: Unescape "\{". (closes #8917)
+Files: src/vim.h, src/cmdexpand.c, src/evalfunc.c, src/ex_getln.c,
+ src/proto/ex_getln.pro, src/normal.c, src/session.c,
+ src/terminal.c, src/vim9execute.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3531 (after 8.2.3530)
+Problem: Command line completion test fails on MS-Windows.
+Solution: Do not test with "\{" on MS-Windows.
+Files: src/testdir/test_cmdline.vim
+
+Patch 8.2.3532
+Problem: The previous '' mark is restored after moving the cursor to the
+ original jump position. (Tony Chen)
+Solution: Forget the previous position after checking. (closes #8985)
+Files: src/mark.c, src/testdir/test_marks.vim
+
+Patch 8.2.3533
+Problem: Inefficient code in xxd.
+Solution: Don't use "p" when "hextype" is non-zero. (closes #9013)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3534
+Problem: Autoread test is a bit flaky.
+Solution: Wait a brief moment before overwriting the file.
+Files: src/testdir/test_stat.vim
+
+Patch 8.2.3535
+Problem: If-else indenting is confusing.
+Solution: Add curly brackets and indent. (Dominique Pellé, closes #9010)
+Files: src/drawscreen.c
+
+Patch 8.2.3536
+Problem: The do_highlight() function is way too long.
+Solution: Split it into several functions. (Yegappan Lakshmanan,
+ closes #9011)
+Files: src/highlight.c
+
+Patch 8.2.3537
+Problem: mode() does not return the right value in 'operatorfunc'.
+Solution: Reset finish_op while calling 'operatorfunc'.
+Files: src/ops.c, src/testdir/test_functions.vim
+
+Patch 8.2.3538
+Problem: Else-if indenting is confusing.
+Solution: Add curly brackets. (Yegappan Lakshmanan, closes #9017)
+Files: src/highlight.c
+
+Patch 8.2.3539
+Problem: GTK3: with 'rightleft' set scrollbar may move unintentionally.
+Solution: Ignore events while moving the scrollbar thumb. (closes #8958)
+Files: src/gui_gtk.c
+
+Patch 8.2.3540
+Problem: The mark '] is wrong after put with a count. (Naohiro Ono)
+Solution: Use the right line number. (closes #8956)
+Files: src/register.c, src/testdir/test_put.vim
+
+Patch 8.2.3541
+Problem: Compiler warning for unused variable in tiny version.
+Solution: Add #ifdef. (John Marriott)
+Files: src/highlight.c
+
+Patch 8.2.3542
+Problem: Too many comments are old style.
+Solution: Change comments to // style. (closes #9021)
+Files: src/buffer.c
+
+Patch 8.2.3543
+Problem: Swapname has double slash when 'directory' ends in double slash.
+ (Shane Smith)
+Solution: Remove the superfluous slash. (closes #8876)
+Files: src/memline.c, src/testdir/test_swap.vim
+
+Patch 8.2.3544
+Problem: Unix: may leak file descriptor when using a non-existing
+ directory.
+Solution: Always close the file. (closes #9023)
+Files: src/os_unix.c
+
+Patch 8.2.3545
+Problem: setcellwidths() may make 'listchars' or 'fillchars' invalid.
+Solution: Check the value and give an error. (closes #9024)
+Files: runtime/doc/eval.txt, src/optionstr.c, src/errors.h, src/mbyte.c,
+ src/testdir/test_utf8.vim
+
+Patch 8.2.3546 (after 8.2.3545)
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdef. (closes #9025)
+Files: src/errors.h
+
+Patch 8.2.3547
+Problem: Opening the quickfix window triggers BufWinEnter twice. (Yorick
+ Peterse)
+Solution: Only trigger BufWinEnter with "quickfix". (closes #9022)
+Files: src/ex_cmds.c, src/vim.h, src/quickfix.c, src/buffer.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.3548
+Problem: GTK GUI crashes when reading from stdin.
+Solution: Do not overwrite the NUL after the string. (closes #9028)
+Files: src/gui_gtk_x11.c, src/testdir/test_gui.vim
+
+Patch 8.2.3549
+Problem: Mistakes in test comments.
+Solution: Fix the comments. (closes #9029)
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.3550
+Problem: completion() does not work properly.
+Solution: Set xp_line and add WILD_HOME_REPLACE. (Shougo Matsushita,
+ closes #9016)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3551
+Problem: Checking first character of url twice.
+Solution: Only check once. (closes #9026)
+Files: src/misc1.c
+
+Patch 8.2.3552
+Problem: Xxd revert does not handle end of line correctly.
+Solution: Check for newline first. (closes #9034)
+Files: src/xxd/xxd.c, src/testdir/test_xxd.vim
+
+Patch 8.2.3553 (after 8.2.3552)
+Problem: Xxd test fails on MS-Windows.
+Solution: Split shell command in two.
+Files: src/testdir/test_xxd.vim
+
+Patch 8.2.3554
+Problem: Xxd has various way to exit.
+Solution: Add function to print error and exit. (closes #9035)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3555
+Problem: ModeChanged is not triggered on every mode change.
+Solution: Also trigger on minor mode changes. (Maguns Gross, closes #8999)
+Files: runtime/doc/autocmd.txt, src/autocmd.c, src/insexpand.c,
+ src/misc1.c, src/normal.c, src/terminal.c,
+ src/testdir/test_edit.vim
+
+Patch 8.2.3556
+Problem: Filler lines are incorrect for other window in diff mode after
+ making a change.
+Solution: Copy filler lines from the current window. (closes #8809)
+Files: src/diff.c, src/testdir/test_diffmode.vim,
+ src/testdir/dumps/Test_diff_scroll_change_03.dump
+
+Patch 8.2.3557
+Problem: Vim9: cannot call imported funcref at script level.
+Solution: Check for an imported function. (closes #9007)
+Files: src/userfunc.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3558 (after 8.2.3557)
+Problem: Vim9: asserting the wrong variable.
+Solution: Don't use Foo, use Goo.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.3559
+Problem: Loop variable recreated every time.
+Solution: Keep the loop variable when looping.
+Files: src/ex_eval.c
+
+Patch 8.2.3560
+Problem: Using freed memory with lambda.
+Solution: Do not free lines early, keep them until the expression is
+ finished. (closes #9020)
+Files: src/eval.c, src/proto/eval.pro, src/userfunc.c, src/vim9compile.c,
+ src/structs.h, src/globals.h, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3561
+Problem: Cscope has a complicated way of giving an error message.
+Solution: Use semsg(). (James McCoy, closes #9038)
+Files: src/if_cscope.c
+
+Patch 8.2.3562
+Problem: Cannot add color names.
+Solution: Add the v:colornames dictionary. (Drew Vogel, closes #8761)
+Files: Filelist, READMEdir/README_extra.txt, nsis/gvim.nsi,
+ runtime/colors/README.txt, runtime/colors/lists/csscolors.vim,
+ runtime/colors/lists/default.vim, runtime/doc/eval.txt,
+ runtime/doc/gui_w32.txt, runtime/doc/message.txt,
+ runtime/doc/os_haiku.txt, runtime/doc/syntax.txt,
+ runtime/doc/usr_06.txt, src/Makefile, src/evalvars.c,
+ src/gui_haiku.cc, src/highlight.c, src/gui.c, src/job.c,
+ src/proto/highlight.pro, src/proto/term.pro, src/term.c,
+ src/vim.h, src/globals.h, src/errors.h,
+ src/testdir/test_highlight.vim
+
+Patch 8.2.3563 (after 8.2.3562)
+Problem: Build failure with +eval but without GUI or +termguicolors
+Solution: Adjust #ifdef. (John Marriott)
+Files: src/highlight.c
+
+Patch 8.2.3564
+Problem: Invalid memory access when scrolling without a valid screen.
+Solution: Do not set VALID_BOTLINE in w_valid.
+Files: src/move.c, src/testdir/test_normal.vim
+
+Patch 8.2.3565
+Problem: Makefile dependencies are outdated. (Gary Johnson)
+Solution: Run "make depend" and add missing dependencies.
+Files: src/Makefile
+
+Patch 8.2.3566
+Problem: Build failure on old systems when using nano timestamp.
+Solution: Define _BSD_SOURCE, _SVID_SOURCE and _DEFAULT_SOURCE. (Gary
+ Johnson, closes #9054)
+Files: src/vim.h
+
+Patch 8.2.3567
+Problem: CTRL-I in Insert mode is not tested
+Solution: Add a test case. (Dominique Pellé, closes #8866)
+Files: src/testdir/test_edit.vim
+
+Patch 8.2.3568
+Problem: Ctrl-hat test fails with Athena and Motif. (Elimar Riesebieter)
+Solution: Run the test only with GTK. (Dominique Pellé, closes #9069)
+Files: src/testdir/test_edit.vim
+
+Patch 8.2.3569
+Problem: Error for :let when vimrc is Vim 9 script.
+Solution: Prepend :legacy in the code for converting arguments. (Christian
+ Brabandt, closes #9068, closes #9077)
+Files: src/os_win32.c
+
+Patch 8.2.3570
+Problem: Test_very_large_count fails on 32bit systems.
+Solution: Bail out when using 32 bit numbers. (closes #9072)
+Files: src/testdir/test_put.vim
+
+Patch 8.2.3571
+Problem: Some unicode control characters are considered printable.
+Solution: Make 0x2060 - 0x2069 not printable.
+Files: src/mbyte.c
+
+Patch 8.2.3572
+Problem: Memory leak when closing window and using "multispace" in
+ 'listchars'.
+Solution: Free the memory. (closes #9071)
+Files: src/window.c, src/testdir/test_listchars.vim
+
+Patch 8.2.3573
+Problem: Cannot decide whether to skip test that fails with 64 bit ints.
+ (closes #9072)
+Solution: Add v:sizeofint, v:sizeoflong and v:sizeofpointer. Improve the
+ check for multiply overflow.
+Files: runtime/doc/eval.txt, src/vim.h, src/evalvars.c, src/register.c,
+ src/testdir/test_put.vim
+
+Patch 8.2.3574 (after 8.2.3573)
+Problem: Divide by zero.
+Solution: Don't check for overflow if multiplicand is zero.
+Files: src/register.c
+
+Patch 8.2.3575 (after 8.2.3574)
+Problem: Overflow check still fails when sizeof(int) == sizeof(long).
+Solution: Use a float to check the result.
+Files: src/register.c
+
+Patch 8.2.3576
+Problem: Some functions are not documented for use with a method.
+Solution: Add examples. Fix that sign_unplacelist() only takes one
+ argument. (Sean Dewar, closes #9081)
+Files: src/evalfunc.c, runtime/doc/eval.txt
+
+Patch 8.2.3577 (after 8.2.3574)
+Problem: Overflow check fails with 32 bit ints.
+Solution: Only test with 64 bit ints.
+Files: src/testdir/test_put.vim
+
+Patch 8.2.3578
+Problem: Manipulating highlighting is complicated.
+Solution: Add the hlget() and hlset() functions. (Yegappan Lakshmanan,
+ closes #9039)
+Files: runtime/doc/eval.txt, runtime/doc/syntax.txt,
+ runtime/doc/usr_41.txt, runtime/doc/windows.txt, src/evalfunc.c,
+ src/highlight.c, src/proto/highlight.pro,
+ src/testdir/test_highlight.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3579
+Problem: CI sometimes fails for MinGW.
+Solution: Use backslashes in HandleSwapExists(). (Christian Brabandt,
+ closes #9078)
+Files: src/testdir/runtest.vim
+
+Patch 8.2.3580
+Problem: gj does not move properly with a wide character.
+Solution: Move one to the right. (Christian Brabandt, closes #8702)
+Files: src/normal.c, src/testdir/test_normal.vim
+
+Patch 8.2.3581
+Problem: Reading character past end of line.
+Solution: Correct the cursor column.
+Files: src/ex_docmd.c, src/testdir/test_put.vim
+
+Patch 8.2.3582
+Problem: Reading uninitialized memory when giving spell suggestions.
+Solution: Check that preword is not empty.
+Files: src/spellsuggest.c, src/testdir/test_spell.vim
+
+Patch 8.2.3583
+Problem: The "gd" and "gD" commands do not update search stats. (Gary
+ Johnson)
+Solution: Clear search stats.
+Files: src/normal.c, src/testdir/test_search_stat.vim,
+ src/testdir/dumps/Test_searchstatgd_1.dump,
+ src/testdir/dumps/Test_searchstatgd_2.dump
+
+Patch 8.2.3584
+Problem: "verbose set efm" reports the location of the :compiler command.
+ (Gary Johnson)
+Solution: Add the "-keepscript" argument to :command and use it when
+ defining CompilerSet.
+Files: runtime/doc/map.txt, src/ex_cmds2.c, src/usercmd.c, src/ex_cmds.h,
+ src/testdir/test_compiler.vim
+
+Patch 8.2.3585
+Problem: Crash when passing float to "term_rows" in the options argument of
+ term_start(). (Virginia Senioria)
+Solution: Bail out if the argument is not a number. (closes #9116)
+Files: src/job.c, src/terminal.c, src/testdir/test_terminal.vim
+
+Patch 8.2.3586 (after 8.2.3584)
+Problem: Command completion test fails.
+Solution: Add new argument to expected output
+Files: src/testdir/test_usercommands.vim
+
+Patch 8.2.3587 (after 8.2.3584)
+Problem: Compiler test fails with backslash file separator.
+Solution: Accept slash and backslash.
+Files: src/testdir/test_compiler.vim
+
+Patch 8.2.3588
+Problem: Break statement is never reached.
+Solution: Rely on return value of set_chars_option() not changing.
+ (closes #9103)
+Files: src/optionstr.c
+
+Patch 8.2.3589
+Problem: Failure when the "term_rows" argument of term_start() is an
+ unusual value.
+Solution: Limit to range of zero to 1000. (closes #9116)
+Files: runtime/doc/terminal.txt, src/job.c, src/testdir/test_terminal.vim
+
+Patch 8.2.3590
+Problem: Test for v:colornames sometimes fails. (Dominique Pellé)
+Solution: Check features. Clear v:colornames between tests. (Drew Vogel,
+ closes #9105, closes #9073)
+Files: runtime/doc/eval.txt, src/highlight.c, src/proto/highlight.pro,
+ src/testdir/test_highlight.vim
+
+Patch 8.2.3591
+Problem: No event is triggered when closing a window.
+Solution: Add the WinClosed event. (Naohiro Ono, closes #9110)
+Files: runtime/doc/autocmd.txt, src/autocmd.c,
+ src/testdir/test_autocmd.vim, src/vim.h, src/window.c
+
+Patch 8.2.3592
+Problem: Test_hlset fails when terminal has many columns.
+Solution: Set the number of columns to 80. (Dominique Pellé, closes #9101,
+ closes #9100)
+Files: src/testdir/test_highlight.vim
+
+Patch 8.2.3593
+Problem: Directory is wrong after executing "lcd" with win_execute().
+Solution: Correct the directory when going back to the original window.
+ (closes #9132)
+Files: src/evalwindow.c, src/window.c, src/proto/window.pro,
+ src/testdir/test_execute_func.vim
+
+Patch 8.2.3594
+Problem: Xxd code is a bit difficult to understand.
+Solution: Move some lines to a separate function. (closes #9037)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3595
+Problem: Check for signed overflow might not work everywhere.
+Solution: Limit to 32 bit int. (closes #9043, closes #9067)
+Files: src/getchar.c
+
+Patch 8.2.3596
+Problem: Crash when using :pedit in Vim9 script.
+Solution: Move check for arguments to after checking there are arguments.
+ (Yegappan Lakshmanan, closes #9134, closes #9135)
+Files: src/popupwin.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3597
+Problem: Vim seems to hang when writing a very long text to a terminal
+ window.
+Solution: Limit the amount of text based on 'termwinscroll'. (issue #9080)
+Files: runtime/doc/options.txt, src/terminal.c
+
+Patch 8.2.3598
+Problem: RouterOS filetype is not recognized.
+Solution: Add file and script patterns. (closes #9097)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3599
+Problem: Not all gdbinit files are recognized.
+Solution: Add "gdbinit". (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3600 (after 8.2.3598)
+Problem: Filetype test fails.
+Solution: Add missing change.
+Files: runtime/scripts.vim
+
+Patch 8.2.3601
+Problem: Check for overflow in put count does not work well.
+Solution: Improve the overflow check. (Ozaki Kiichi, closes #9102)
+Files: src/register.c, src/testdir/test_put.vim
+
+Patch 8.2.3602
+Problem: Python3 test fails with Python 3.10 on MS-Windows.
+Solution: Adjust the expected error. (Ken Takata, closes #9118)
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.3603
+Problem: Fish filetype not recognized.
+Solution: Add a file pattern and match script line. (Doug Kearns)
+Files: runtime/filetype.vim, runtime/scripts.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.3604
+Problem: Not all sudoers files are recognized.
+Solution: Add a file pattern. (Doug Kearns, closes #1192)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3605
+Problem: Cannot clear and unlink a highlight group with hlset() in a
+ single call.
+Solution: Add the "force" option. (Yegappan Lakshmanan, closes #9117)
+Files: runtime/doc/eval.txt, src/highlight.c,
+ src/testdir/test_highlight.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3606
+Problem: File missing from list of distributed files.
+Solution: Add the file.
+Files: Filelist
+
+Patch 8.2.3607
+Problem: GTK3 screen updating is slow.
+Solution: Remove some of the GTK3-specific code. (closes #9052)
+Files: src/gui.h, src/gui_gtk_x11.c
+
+Patch 8.2.3608
+Problem: Users who type "q:" instead of ":q" are confused.
+Solution: Add an autocmd to give a message that explains this is the
+ command-line window. (Egor Zvorykin, closes #9146)
+Files: runtime/defaults.vim, src/testdir/test_autocmd.vim,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.3609
+Problem: Internal error when ModeChanged is triggered when v:event is
+ already in use.
+Solution: Save and restore v:event if needed.
+Files: src/misc1.c, src/proto/misc1.pro, src/testdir/test_edit.vim,
+ src/insexpand.c, src/structs.h, src/register.c
+
+Patch 8.2.3610
+Problem: Crash when ModeChanged triggered too early.
+Solution: Trigger ModeChanged after setting VIsual.
+Files: src/normal.c, src/testdir/test_edit.vim
+
+Patch 8.2.3611
+Problem: Crash when using CTRL-W f without finding a file name.
+Solution: Bail out when the file name length is zero.
+Files: src/findfile.c, src/normal.c, src/testdir/test_visual.vim
+
+Patch 8.2.3612
+Problem: Using freed memory with regexp using a mark.
+Solution: Get the line again after getting the mark position.
+Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test_regexp_latin.vim
+
+Patch 8.2.3613
+Problem: :find test fails.
+Solution: Put length check inside if block.
+Files: src/findfile.c
+
+Patch 8.2.3614
+Problem: zindex of popup windows not used when redrawing popup menu.
+Solution: Check the zindex when redrawing the popup menu. (closes #9129,
+ closes #9089)
+Files: src/popupmenu.c, src/popupwin.c, src/proto/popupmenu.pro,
+ src/screen.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_popupmenu_masking_1.dump,
+ src/testdir/dumps/Test_popupwin_popupmenu_masking_2.dump
+
+Patch 8.2.3615
+Problem: When re-formatting with an indent expression the first line of a
+ paragraph may get the wrong indent. (Martin F. Krafft)
+Solution: Apply the correct indenting function for the first line.
+ (Christian Brabandt, closes #9150, closes #9056)
+Files: src/textformat.c, src/testdir/test_indent.vim
+
+Patch 8.2.3616
+Problem: Arglist test does not clear the argument list consistently.
+Solution: Call Reset_arglist(). (Shougo Matsushita, closes #9154)
+Files: src/testdir/test_arglist.vim
+
+Patch 8.2.3617
+Problem: ":verbose pwd" does not mention 'autochdir' was applied.
+Solution: Remember the last chdir was done by 'autochdir'. (issue #9142)
+Files: src/globals.h, src/buffer.c, src/ex_docmd.c, src/window.c,
+ src/main.c, src/netbeans.c, src/os_win32.c,
+ src/testdir/test_autochdir.vim
+
+Patch 8.2.3618
+Problem: getcwd() is unclear about how 'autochdir' is used.
+Solution: Update the help for getcwd(). Without any arguments always return
+ the actual current directory. (closes #9142)
+Files: runtime/doc/eval.txt, src/filepath.c, src/testdir/test_cd.vim
+
+Patch 8.2.3619
+Problem: Cannot use a lambda for 'operatorfunc'.
+Solution: Support using a lambda or partial. (Yegappan Lakshmanan,
+ closes #8775)
+Files: runtime/doc/map.txt, runtime/doc/options.txt, src/ops.c,
+ src/option.c, src/optionstr.c, src/proto/ops.pro,
+ src/proto/option.pro, src/quickfix.c, src/testdir/test_normal.vim
+
+Patch 8.2.3620
+Problem: Memory leak reported in libtlib.
+Solution: Call del_curterm() when cleaning up memory. Rename term.h to
+ termdefs.h to avoid a name clash.
+Files: src/term.c, src/proto/term.pro, src/alloc.c, src/configure.ac,
+ src/auto/configure, src/config.h.in, src/Makefile,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
+ src/term.h, src/termdefs.h
+
+Patch 8.2.3621 (after 8.2.3620)
+Problem: Build failure.
+Solution: Add missing change.
+Files: src/vim.h
+
+Patch 8.2.3622
+Problem: "verbose pwd" shows confusing info when :lcd does not change
+ directory.
+Solution: Clear last_chdir_reason also when the directory does not change.
+ (closes #9160)
+Files: src/ex_docmd.c, src/testdir/test_autochdir.vim
+
+Patch 8.2.3623
+Problem: "$*" is expanded to "nonomatch".
+Solution: Only add "set nonomatch" when using a csh-like shell. (Christian
+ Brabandt, closes #9159, closes #9153)
+Files: src/os_unix.c, src/testdir/test_expand.vim
+
+Patch 8.2.3624
+Problem: When renaming a terminal buffer the status text is not updated.
+Solution: Clear the cached status text when renaming a terminal buffer.
+ (closes #9162)
+Files: src/buffer.c, src/terminal.c, src/proto/terminal.pro,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.3625
+Problem: Illegal memory access when C-indenting.
+Solution: Also set the cursor column.
+Files: src/cindent.c, src/testdir/test_cindent.vim
+
+Patch 8.2.3626
+Problem: "au!" and "au! event" cannot be followed by another command as
+ documented.
+Solution: When a bar is found set nextcmd.
+Files: src/autocmd.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.3627
+Problem: difficult to know where the text starts in a window. (Sergey
+ Vlasov)
+Solution: Add the "textoff" entry in the result of getwininfo().
+ (closes #9163)
+Files: runtime/doc/eval.txt, src/evalwindow.c,
+ src/testdir/test_bufwintabinfo.vim
+
+Patch 8.2.3628
+Problem: Looking up terminal colors is a bit slow.
+Solution: Cache the terminal colors. (closes #9130, closes #9058)
+Files: src/highlight.c, src/libvterm/include/vterm.h, src/option.c,
+ src/optionstr.c, src/popupwin.c, src/proto/terminal.pro,
+ src/structs.h, src/terminal.c, src/window.c,
+ src/testdir/test_terminal3.vim,
+ src/testdir/dumps/Test_terminal_color_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_color_MyTermCol_over_Terminal.dump,
+ src/testdir/dumps/Test_terminal_color_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_color_MyWinCol_over_group.dump,
+ src/testdir/dumps/Test_terminal_color_Terminal.dump,
+ src/testdir/dumps/Test_terminal_color_gui_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_color_gui_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_color_gui_Terminal.dump,
+ src/testdir/dumps/Test_terminal_color_gui_transp_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_color_gui_transp_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_color_gui_transp_Terminal.dump,
+ src/testdir/dumps/Test_terminal_color_transp_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_color_transp_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_color_transp_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_MyPopupHlCol.dump,
+ src/testdir/dumps/Test_terminal_popup_MyTermCol_over_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_popup_MyWinCol_over_group.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_MyPopupHlCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_transp_MyPopupHlCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_transp_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_transp_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_popup_gui_transp_Terminal.dump,
+ src/testdir/dumps/Test_terminal_popup_transp_MyPopupHlCol.dump,
+ src/testdir/dumps/Test_terminal_popup_transp_MyTermCol.dump,
+ src/testdir/dumps/Test_terminal_popup_transp_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_popup_transp_Terminal.dump,
+ src/testdir/dumps/Test_terminal_wincolor_split_MyWinCol.dump,
+ src/testdir/dumps/Test_terminal_wincolor_split_MyWinCol2.dump
+
+Patch 8.2.3629
+Problem: Command completion in cmdline window uses global user commands,
+ not local commands for the window where it was opened from.
+Solution: Use local commands. (closes #9168)
+Files: src/ex_getln.c, src/proto/ex_getln.pro, src/evalvars.c,
+ src/usercmd.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.3630
+Problem: Printf() with %S does not handle multi-byte correctly.
+Solution: Count cells instead of bytes. (closes #9169, closes #7486)
+Files: src/strings.c, src/testdir/test_expr.vim
+
+Patch 8.2.3631
+Problem: "syntax enable" does not work properly in Vim9 context.
+Solution: Also handle Vim9 context. (closes #9161)
+Files: src/syntax.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3632
+Problem: GTK3: undercurl does not get removed properly.
+Solution: Set the cairo cursor first. (closes #9170)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3633
+Problem: Vim9: line number of lambda is off by one.
+Solution: Add one to the line number. (closes #9083)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3634
+Problem: Error for already defined function uses wrong line number.
+Solution: Set SOURCING_LNUM before giving the error message. (closes #9085)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3635
+Problem: GTK: composing underline does not show.
+Solution: Include composing character in pango call. A few more
+ optimizations for ligatures. (Dusan Popovic, closes #9171,
+ closes #9147)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3636
+Problem: Coverity warns for unreachable code.
+Solution: Remove unreachable else block.
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3637
+Problem: Typos in test files.
+Solution: Correct the typos. (Dominique Pellé, closes #9175)
+Files: src/testdir/runtest.vim, src/testdir/test_debugger.vim,
+ src/testdir/test_diffmode.vim, src/testdir/test_edit.vim,
+ src/testdir/test_excmd.vim, src/testdir/test_flatten.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_normal.vim,
+ src/testdir/test_options.vim, src/testdir/test_python2.vim,
+ src/testdir/test_python3.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_recover.vim, src/testdir/test_spellfile.vim,
+ src/testdir/test_syntax.vim, src/testdir/test_termcodes.vim,
+ src/testdir/test_textobjects.vim, src/testdir/test_trycatch.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_viminfo.vim
+
+Patch 8.2.3638
+Problem: getcompletion() always passes zero as position to custom
+ completion function.
+Solution: Pass the pattern length. (closes #9173)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.3639 (after 8.2.2922)
+Problem: Line commented out accidentally.
+Solution: Uncomment. (Volodymyr Kot, closes #9172)
+Files: src/main.c
+
+Patch 8.2.3640
+Problem: Freeze when calling term_wait() in a close callback.
+Solution: Set a "closing" flag to tell term_wait() to return. (closes #9152)
+Files: src/channel.c, src/terminal.c, src/proto/terminal.pro,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.3641
+Problem: Xxd code has duplicate expressions.
+Solution: Refactor to avoid duplication. (closes #9185)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3642
+Problem: List of distributed files is outdated.
+Solution: Rename term.h to termdefs.h.
+Files: Filelist
+
+Patch 8.2.3643
+Problem: Header for source file is outdated.
+Solution: Make the header more accurate. (closes #9186)
+Files: src/map.c, src/getchar.c
+
+Patch 8.2.3644
+Problem: Count for 'operatorfunc' in Visual mode is not redone.
+Solution: Add the count to the redo buffer. (closes #9174)
+Files: src/normal.c, src/proto/normal.pro, src/ops.c,
+ src/testdir/test_normal.vim
+
+Patch 8.2.3645
+Problem: Vim9: The "no effect" error is not given for all registers.
+Solution: Include any character following '@'. (closes #8779)
+Files: src/ex_eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3646
+Problem: Using <sfile> in a function gives an unexpected result.
+Solution: Give an error in a Vim9 function. (issue #9189)
+Files: src/scriptfile.c, src/errors.h, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3647
+Problem: GTK: when using ligatures the cursor is drawn wrong.
+Solution: Clear more characters when ligatures are used. (Dusan Popovic,
+ closes #9190)
+Files: src/gui.c
+
+Patch 8.2.3648
+Problem: "verbose pwd" is incorrect after dropping files on Vim.
+Solution: Set the chdir reason to "drop".
+Files: src/gui.c
+
+Patch 8.2.3649
+Problem: Vim9: error for variable declared in while loop.
+Solution: Do not keep the first variable. (closes #9191)
+Files: src/ex_eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3650
+Problem: Vim9: for loop variable can be a list member.
+Solution: Check for valid variable name. (closes #9179)
+Files: src/vim9compile.c, src/dict.c, src/eval.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3651
+Problem: Vim9: no error for :lock or :unlock with unknown variable.
+Solution: Give an error. (closes #9188)
+Files: src/evalvars.c, src/errors.h, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3652
+Problem: Can only get text properties one line at a time.
+Solution: Add options to prop_list() to use a range of lines and filter by
+ types. (Yegappan Lakshmanan, closes #9138)
+Files: runtime/doc/textprop.txt, src/textprop.c,
+ src/testdir/test_textprop.vim
+
+Patch 8.2.3653
+Problem: Terminal ANSI colors may be wrong.
+Solution: Initialize the color type. (closes #9198, closes #9197)
+Files: src/terminal.c
+
+Patch 8.2.3654
+Problem: GTK: a touch-drag does not update the selection.
+Solution: Add GDK_BUTTON1_MASK to the state. (Chris Dalton, close #9196,
+ closes #9194)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.3655
+Problem: Compiler warning for using size_t for int.
+Solution: Add a type cast. (Mike Williams, closes #9199)
+Files: src/vim9compile.c
+
+Patch 8.2.3656
+Problem: Vim9: no error for an environment variable by itself.
+Solution: Give a "without effect" error. (closes #9166)
+Files: src/ex_eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3657
+Problem: Vim9: debug text misses one line of return statement.
+Solution: Add a line when not at a debug instruction. (closes #9137)
+Files: src/vim9execute.c, src/testdir/test_debugger.vim
+
+Patch 8.2.3658
+Problem: Duplicate code in xxd.
+Solution: Merge duplicated code. Add more tests. (closes #9192)
+Files: src/xxd/xxd.c, src/testdir/test_xxd.vim
+
+Patch 8.2.3659
+Problem: Integer overflow with large line number.
+Solution: Check for overflow. (closes #9202)
+Files: src/errors.h, src/ex_docmd.c, src/testdir/test_excmd.vim
+ src/normal.c, src/testdir/test_normal.vim
+
+Patch 8.2.3660 (after 8.2.3659)
+Problem: Overflow check uses wrong number.
+Solution: Divide by ten.
+Files: src/normal.c
+
+Patch 8.2.3661 (after 8.2.3659)
+Problem: Test for put with large count fails.
+Solution: Adjust the counts in the test.
+Files: src/testdir/test_put.vim
+
+Patch 8.2.3662
+Problem: Illegal memory access if malloc() fails.
+Solution: Check 'foldmethod' is not empty. (closes #9207)
+Files: src/fold.c
+
+Patch 8.2.3663
+Problem: Using %S in printf() does not work correctly.
+Solution: Fix the problem and add more tests. (closes #9208)
+Files: src/strings.c, src/testdir/test_expr.vim
+
+Patch 8.2.3664
+Problem: Cannot adjust sign highlighting for 'cursorline'.
+Solution: Add CursorLineSign and CursorLineFold highlight groups.
+ (Gregory Anders, closes #9201)
+Files: runtime/doc/sign.txt, runtime/doc/syntax.txt, src/drawline.c,
+ src/highlight.c, src/optiondefs.h, src/popupwin.c,
+ src/proto/sign.pro, src/sign.c, src/structs.h, src/vim.h,
+ src/testdir/test_signs.vim
+
+Patch 8.2.3665
+Problem: Cannot use a lambda for 'tagfunc'.
+Solution: Use 'tagfunc' like 'opfunc'. (Yegappan Lakshmanan, closes #9204)
+Files: runtime/doc/options.txt, src/buffer.c, src/option.c,
+ src/optionstr.c, src/proto/tag.pro, src/structs.h, src/tag.c,
+ src/testdir/test_tagfunc.vim
+
+Patch 8.2.3666
+Problem: Libvterm is outdated.
+Solution: Include patches from revision 769 to revision 789.
+Files: Filelist, src/libvterm/Makefile, src/libvterm/doc/seqs.txt,
+ src/libvterm/include/vterm.h, src/libvterm/src/mouse.c,
+ src/libvterm/src/parser.c, src/libvterm/src/state.c,
+ src/libvterm/src/vterm.c, src/libvterm/src/vterm_internal.h,
+ src/libvterm/t/02parser.test, src/libvterm/t/17state_mouse.test,
+ src/libvterm/t/29state_fallback.test,
+ src/libvterm/t/40state_selection.test, src/libvterm/t/harness.c,
+ src/libvterm/t/run-test.pl, src/libvterm/vterm.pc.in,
+ src/terminal.c
+
+Patch 8.2.3667
+Problem: Building libvterm fails with MSVC.
+Solution: Don't use C99 construct.
+Files: src/libvterm/src/state.c
+
+Patch 8.2.3668
+Problem: Messages may be corrupted.
+Solution: Use another buffer instead of IObuff. (Yegappan Lakshmanan,
+ closes #9195)
+Files: src/highlight.c, src/testdir/test_highlight.vim
+
+Patch 8.2.3669
+Problem: Buffer overflow with long help argument.
+Solution: Use snprintf().
+Files: src/help.c, src/testdir/test_help.vim
+
+Patch 8.2.3670
+Problem: Error checks repeated several times.
+Solution: Move the checks to functions. (closes #9213)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3671
+Problem: Restarting Insert mode in prompt buffer too often when a callback
+ switches windows and comes back. (Sean Dewar)
+Solution: Do not set "restart_edit" when already in Insert mode.
+ (closes #9212)
+Files: src/window.c, src/testdir/test_prompt_buffer.vim
+
+Patch 8.2.3672 (after 8.2.3670)
+Problem: Build failure with unsigned char.
+Solution: Use int instead of char.
+Files: src/xxd/xxd.c
+
+Patch 8.2.3673
+Problem: Crash when allocating signal stack fails.
+Solution: Only using sourcing info when available. (closes #9215)
+Files: src/globals.h, src/message.c
+
+Patch 8.2.3674
+Problem: When ml_get_buf() fails it messes up IObuff.
+Solution: Return a local pointer. (closes #9214)
+Files: src/memline.c
+
+Patch 8.2.3675
+Problem: Using freed memory when vim_strsave() fails.
+Solution: Clear "last_sourcing_name". Check for msg_source() called
+ recursively. (closes #8217)
+Files: src/message.c
+
+Patch 8.2.3676
+Problem: Unused runtime file.
+Solution: Remove rgb.txt.
+Files: runtime/rgb.txt
+
+Patch 8.2.3677
+Problem: After a put the '] mark is on the last byte of a multi-byte
+ character.
+Solution: Move it to the first byte. (closes #9047)
+Files: src/register.c, src/testdir/test_put.vim
+
+Patch 8.2.3678 (after 8.2.3677)
+Problem: Illegal memory access.
+Solution: Ignore changed indent when computing byte offset.
+Files: src/register.c
+
+Patch 8.2.3679
+Problem: objc file detected as Octave. (Antony Lee)
+Solution: Detect objc by preprocessor lines. (Doug Kearns, closes #9223,
+ closes #9220)
+Files: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3680
+Problem: Repeated code in xxd.
+Solution: Change exit_on_ferror() to getc_or_die(). (closes #9226)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3681
+Problem: Cannot drag popup window after click on a status line. (Sergey
+ Vlasov)
+Solution: Reset on_status_line. (closes #9221)
+Files: src/mouse.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_drag_04.dump
+
+Patch 8.2.3682
+Problem: Vim9: assigning to a script variable drops the required type.
+Solution: Lookup the type of the variable and use it. (closes #9219)
+Files: src/evalvars.c, src/vim9script.c, src/proto/vim9script.pro,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3683
+Problem: Vim9: cannot use `=expr` in :...do commands.
+Solution: Add EX_EXPAND to the commands. (closes #9232)
+Files: src/ex_cmds.h, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3684
+Problem: Blockwise insert does not handle autoindent properly.
+Solution: Adjust text column for indent. (closes #9229)
+Files: src/ops.c, src/testdir/test_blockedit.vim
+
+Patch 8.2.3685
+Problem: Visual Studio project files are not recognized.
+Solution: Use the xml file type. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3686
+Problem: Filetype detection often mixes up Forth and F#.
+Solution: Add a function to inspect the file contents. (Doug Kearns)
+Files: runtime/autoload/dist/ft.vim, runtime/doc/filetype.txt,
+ runtime/doc/syntax.txt, runtime/filetype.vim, runtime/scripts.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.3687
+Problem: Blockwise insert does not handle autoindent properly when tab is
+ inserted.
+Solution: Adjust text column for indent before computing column.
+ (closes #9229)
+Files: src/ops.c, src/testdir/test_blockedit.vim
+
+Patch 8.2.3688
+Problem: The window title is not updated when dragging the scrollbar.
+Solution: Call maketitle(). (Christian Brabandt, closes #9238, closes #5383)
+Files: src/gui.c
+
+Patch 8.2.3689
+Problem: ex_let_one() is too long.
+Solution: Split into multiple functions.
+Files: src/evalvars.c
+
+Patch 8.2.3690
+Problem: Vim9: "filter #pat# cmd" does not work.
+Solution: Do not see #pat# as a comment.
+Files: src/ex_docmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3691
+Problem: Build failure with small features.
+Solution: Add #ifdef. (Dominique Pellé)
+Files: src/gui.c
+
+Patch 8.2.3692
+Problem: Vim9: cannot use :func inside a :def function.
+Solution: Make it work.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c, src/errors.h,
+ src/structs.h, src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3693
+Problem: Coverity warns for possibly using a NULL pointer.
+Solution: Check for NULL and give an error.
+Files: src/vim9execute.c, src/errors.h
+
+Patch 8.2.3694
+Problem: Cannot use quotes in the count of an Ex command.
+Solution: Add getdigits_quoted(). Give an error when misplacing a quote in
+ a range. (closes #9240)
+Files: src/ex_docmd.c, src/charset.c, src/proto/charset.pro,
+ src/testdir/test_usercommands.vim
+
+Patch 8.2.3695
+Problem: Confusing error for missing key.
+Solution: Use the actual key for the error. (closes #9241)
+Files: src/eval.c, src/testdir/test_listdict.vim
+
+Patch 8.2.3696
+Problem: Vim9: error for invalid assignment when skipping.
+Solution: Do not check white space when skipping. (closes #9243)
+Files: src/evalvars.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3697
+Problem: Cannot drag a popup without a border.
+Solution: Add the "dragall" option. (closes #9218)
+Files: runtime/doc/popup.txt, src/mouse.c, src/popupwin.c, src/vim.h,
+ src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_drag_05.dump,
+ src/testdir/dumps/Test_popupwin_drag_06.dump
+
+Patch 8.2.3698
+Problem: Match highlighting continues over breakindent.
+Solution: Stop before the end column. (closes #9242)
+Files: src/match.c, src/proto/match.pro, src/drawline.c,
+ src/testdir/test_match.vim,
+ src/testdir/dumps/Test_match_linebreak.dump
+
+Patch 8.2.3699
+Problem: The +title feature adds a lot of #ifdef but little code.
+Solution: Graduate the +title feature.
+Files: src/feature.h, src/alloc.c, src/arglist.c, src/autocmd.c,
+ src/buffer.c, src/bufwrite.c, src/change.c, src/drawscreen.c,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/gui.c,
+ src/gui_gtk_x11.c, src/if_xcmdsrv.c, src/locale.c, src/main.c,
+ src/misc2.c, src/netbeans.c, src/option.c, src/optionstr.c,
+ src/os_amiga.c, src/os_mswin.c, src/os_unix.c, src/os_win32.c,
+ src/regexp.c, src/term.c, src/ui.c, src/version.c, src/window.c,
+ src/globals.h, src/option.h, src/optiondefs.h,
+ runtime/doc/options.txt, runtime/doc/various.txt
+
+Patch 8.2.3700
+Problem: Text property highlighting continues over breakindent.
+Solution: Stop before the end column. (closes #9242)
+Files: src/drawline.c, src/testdir/test_textprop.vim,
+ src/testdir/dumps/Test_prop_linebreak.dump
+
+Patch 8.2.3701
+Problem: Vim9: invalid LHS is not possible.
+Solution: Remove unreachable error message.
+Files: src/vim9compile.c
+
+Patch 8.2.3702
+Problem: First key in dict is seen as curly expression and fails.
+Solution: Ignore failure of curly expression. (closes #9247)
+Files: src/typval.c, src/dict.c, src/testdir/test_listdict.vim
+
+Patch 8.2.3703 (after 8.2.3686)
+Problem: Most people call F# "fsharp" and not "fs".
+Solution: Rename filetype "fs" to "fsharp".
+Files: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.3704
+Problem: Vim9: cannot use a list declaration in a :def function.
+Solution: Make it work.
+Files: runtime/doc/vim9.txt, src/vim9compile.c, src/errors.h,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3705
+Problem: Cannot pass a lambda name to function() or funcref(). (Yegappan
+ Lakshmanan)
+Solution: Handle a lambda name differently.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
+ src/testdir/test_expr.vim
+
+Patch 8.2.3706 (after 8.2.3700)
+Problem: Text property highlighting is used on Tab.
+Solution: Only set in_linebreak when not on a Tab. (closes #9242)
+Files: src/drawline.c, src/testdir/test_textprop.vim,
+ src/testdir/dumps/Test_prop_after_tab.dump
+
+Patch 8.2.3707
+Problem: Vim9: constant expression of elseif not recognized.
+Solution: Set instruction count before generating the expression.
+Files: src/vim9compile.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3708 (after 8.2.3707)
+Problem: Vim9: test fails with different error.
+Solution: Correct the error number.
+Files: src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3709
+Problem: Vim9: backtick expression expanded when not desired.
+Solution: Only expand a backtick expression for commands that expand their
+ argument. Remove a few outdated TODO comments.
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3710
+Problem: Vim9: backtick expression expanded for :global.
+Solution: Check the following command.
+Files: runtime/doc/vim9.txt, src/vim9compile.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3711
+Problem: Vim9: memory leak when compiling :elseif fails.
+Solution: Cleanup ppconst.
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3712
+Problem: Cannot use Vim9 lambda for 'tagfunc'.
+Solution: Make it work, add more tests. (Yegappan Lakshmanan, closes #9250)
+Files: runtime/doc/options.txt, src/insexpand.c, src/option.c,
+ src/testdir/test_tagfunc.vim
+
+Patch 8.2.3713
+Problem: MS-Windows: No error message if vimgrep pattern is not matching.
+Solution: Give an error message. (Christian Brabandt, closes #9245,
+ closes #8762)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.3714
+Problem: Some unused assignments and ugly code in xxd.
+Solution: Leave out assignments. Use marcro for fprintf(). (closes #9246)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3715
+Problem: Vim9: valgrind reports spurious problems for a test.
+Solution: Move the test to the set that is known to fail.
+Files: src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_fails.vim
+
+Patch 8.2.3716
+Problem: Vim9: range without a command is not compiled.
+Solution: Add the ISN_EXECRANGE byte code.
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/vim9compile.c,
+ src/vim9execute.c, src/vim9.h,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3717
+Problem: Vim9: error for constant list size is only given at runtime.
+Solution: Give the error at compile time if possible.
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3718
+Problem: Compiler warns for unused variable without the +textprop feature.
+ (John Marriott)
+Solution: Adjust #ifdefs.
+Files: src/drawline.c
+
+Patch 8.2.3719
+Problem: MS-Windows: test sometimes runs into existing swap file.
+Solution: Use a different file name.
+Files: src/testdir/test_buffer.vim
+
+Patch 8.2.3720
+Problem: Vim9: Internal error when invoking closure in legacy context.
+Solution: Give a more appropriate error message. (closes #9251)
+Files: src/errors.h, src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3721
+Problem: Using memory freed by losing the clipboard selection. (Dominique
+ Pellé)
+Solution: Check y_array is still valid after calling changed_lines().
+ (closes #9253)
+Files: src/errors.h, src/register.c
+
+Patch 8.2.3722
+Problem: Amiga: superfluous messages for freeing lots of yanked text.
+Solution: Assume that the machine isn't that slow these days.
+Files: src/register.c
+
+Patch 8.2.3723
+Problem: When using 'linebreak' a text property starts too early.
+Solution: Decrement "bcol" when looking for property start. (closes #9242)
+Files: src/drawline.c, src/testdir/test_textprop.vim,
+ src/testdir/dumps/Test_prop_after_linebreak.dump
+
+Patch 8.2.3724
+Problem: Build error for missing error message in small build.
+Solution: Correct #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3725
+Problem: Cannot use a lambda for 'completefunc' and 'omnifunc'.
+Solution: Implement lambda support. (Yegappan Lakshmanan, closes #9257)
+Files: runtime/doc/options.txt, src/buffer.c, src/insexpand.c,
+ src/option.c, src/optionstr.c, src/proto/insexpand.pro,
+ src/proto/tag.pro, src/proto/userfunc.pro, src/structs.h,
+ src/tag.c, src/userfunc.c, src/testdir/test_ins_complete.vim,
+ src/testdir/test_tagfunc.vim
+
+Patch 8.2.3726
+Problem: README file in a config directory gets wrong filetype.
+Solution: Match README before patterns that match everything in a directory.
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3727
+Problem: In a gnome terminal keys are recognized as mouse events.
+Solution: Only recognize DEC mouse events when four numbers are following.
+ (closes #9256)
+Files: src/term.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.3728
+Problem: Internal error when passing range() to list2blob().
+Solution: Materialize the list first. (closes #9262)
+Files: src/blob.c, src/testdir/test_blob.vim
+
+Patch 8.2.3729
+Problem: No support for squirrels.
+Solution: Recognize nuts. (closes #9259)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3730
+Problem: "/etc/Muttrc.d/README" gets filetype muttrc.
+Solution: Move the Muttrc.d pattern down, add exception for *.rc files.
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3731
+Problem: "set! termcap" shows codes in one column, but not keys.
+Solution: Also use one column for keys. (closes #9258)
+Files: src/option.c, src/term.c, src/proto/term.pro,
+ src/testdir/test_set.vim
+
+Patch 8.2.3732 (after 8.2.3731)
+Problem: "set! termcap" test fails.
+Solution: Account for keys without a t_xx entry.
+Files: src/testdir/test_set.vim
+
+Patch 8.2.3733
+Problem: Vim9: using "legacy" before range does not work.
+Solution: Skip over range before parsing command. (closes #9270)
+Files: src/vim9compile.c, src/usercmd.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3734
+Problem: Vim9: crash when no pattern match found.
+Solution: Check for error.
+Files: src/vim9execute.c
+
+Patch 8.2.3735
+Problem: Cannot use a lambda for 'imactivatefunc'.
+Solution: Add lambda support for 'imactivatefunc' and 'imstatusfunc'.
+ (Yegappan Lakshmanan, closes #9275)
+Files: runtime/doc/options.txt, src/alloc.c, src/gui_xim.c,
+ src/optionstr.c, src/proto/gui_xim.pro,
+ src/testdir/test_iminsert.vim, src/testdir/test_ins_complete.vim
+
+Patch 8.2.3736
+Problem: Test fails without the channel feature. (Dominique Pellé)
+Solution: Source the check.vim script. (closes #9277)
+Files: src/testdir/test_vim9_fails.vim
+
+Patch 8.2.3737
+Problem: Test fails without the 'autochdir' option.
+Solution: Check that the option is available. (Dominique Pellé, closes #9272)
+Files: src/testdir/test_cd.vim
+
+Patch 8.2.3738
+Problem: Screen is cleared when a FocusLost autocommand triggers.
+Solution: Do not redraw when at the hit-enter or more prompt. (closes #9274)
+Files: src/misc1.c
+
+Patch 8.2.3739
+Problem: In wrong directory when using win_execute() with 'acd' set.
+Solution: Restore the directory when returning to the window. (closes #9276)
+Files: src/window.c, src/testdir/test_autochdir.vim
+
+Patch 8.2.3740
+Problem: Memory left allocated on exit when using Tcl.
+Solution: Call Tcl_Finalize().
+Files: src/if_tcl.c, src/proto/if_tcl.pro, src/alloc.c
+
+Patch 8.2.3741
+Problem: Using freed memory in open command.
+Solution: Make a copy of the current line.
+Files: src/ex_docmd.c, src/testdir/test_ex_mode.vim
+
+Patch 8.2.3742
+Problem: Dec mouse test fails without gnome terminfo entry.
+Solution: Check if there is a gnome entry. Also fix 'acd' test on
+ MS-Windows. (Ozaki Kiichi, closes #9282)
+Files: src/testdir/test_termcodes.vim, src/testdir/test_autochdir.vim
+
+Patch 8.2.3743
+Problem: ":sign" can add a highlight group without a name.
+Solution: Give an error if the group name is missing. (closes #9280)
+Files: src/sign.c, src/errors.h, src/testdir/test_signs.vim
+
+Patch 8.2.3744
+Problem: E854 is not tested; some spelling suggestions are not tested.
+Solution: Add a couple of tests. (Dominique Pellé, closes #9279)
+Files: src/testdir/test_options.vim, src/testdir/test_spell.vim
+
+Patch 8.2.3745
+Problem: Autochdir test fails without the +channel feature.
+Solution: Remove the ch_logfile() call. (Dominique Pellé, closes #9281)
+Files: src/testdir/test_autochdir.vim
+
+Patch 8.2.3746
+Problem: Cannot disassemble function starting with "debug" or "profile".
+Solution: Check for white space following. (closes #9273)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3747 (after 8.2.3743)
+Problem: Cannot remove highlight from an existing sign. (James McCoy)
+Solution: Only reject empty argument for a new sign.
+Files: src/sign.c, src/testdir/test_signs.vim
+
+Patch 8.2.3748 (after 8.2.3747)
+Problem: Giving an error for an empty sign argument breaks a plugin.
+Solution: Do not give an error.
+Files: src/sign.c, src/errors.h, src/testdir/test_signs.vim
+
+Patch 8.2.3749
+Problem: Error messages are everywhere.
+Solution: Move more error messages to errors.h and adjust the names.
+Files: src/errors.h, src/regexp_bt.c, src/regexp.c, src/regexp_nfa.c,
+ src/globals.h, src/memfile.c, src/tag.c, src/getchar.c,
+ src/bufwrite.c, src/cmdexpand.c
+
+Patch 8.2.3750
+Problem: Error messages are everywhere.
+Solution: Move more error messages to errors.h and adjust the names.
+Files: src/globals.h, src/errors.h, src/blob.c, src/buffer.c,
+ src/channel.c, src/ex_docmd.c, src/job.c, src/list.c, src/mark.c,
+ src/misc1.c, src/os_unix.c, src/popupwin.c, src/register.c,
+ src/session.c, src/spellfile.c, src/term.c, src/userfunc.c
+
+Patch 8.2.3751
+Problem: Cannot assign a lambda to an option that takes a function.
+Solution: Automatically convert the lambda to a string. (Yegappan
+ Lakshmanan, closes #9286)
+Files: runtime/doc/options.txt, src/eval.c, src/proto/eval.pro,
+ src/evalvars.c, src/if_mzsch.c, src/if_ruby.c, src/if_tcl.c,
+ src/option.c, src/option.h, src/optiondefs.h,
+ src/proto/option.pro, src/spell.c, src/typval.c,
+ src/vim9compile.c, src/testdir/test_iminsert.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_tagfunc.vim
+
+Patch 8.2.3752
+Problem: Build error when using Photon GUI.
+Solution: Adjust #ifdef. (closes #9288)
+Files: src/beval.c
+
+Patch 8.2.3753
+Problem: Vim9: function unreferenced while called is never deleted.
+Solution: Delete a function when no longer referenced.
+Files: src/vim9execute.c, src/userfunc.c, src/proto/userfunc.pro
+
+Patch 8.2.3754 (after 8.2.3615)
+Problem: Undesired changing of the indent of the first formatted line.
+Solution: Do not indent the first formatted line.
+Files: src/textformat.c, src/testdir/test_indent.vim
+
+Patch 8.2.3755
+Problem: Coverity warns for using a buffer in another scope.
+Solution: Declare the buffer in a common scope.
+Files: src/evalvars.c
+
+Patch 8.2.3756
+Problem: might crash when callback is not valid.
+Solution: Check for valid callback. (Yegappan Lakshmanan, closes #9293)
+Files: src/insexpand.c, src/option.c, src/tag.c, src/job.c,
+ src/userfunc.c, src/testdir/test_iminsert.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_tagfunc.vim
+
+Patch 8.2.3757
+Problem: An overlong highlight group name is silently truncated.
+Solution: Give an error if the name is too long. (closes #9289)
+Files: src/errors.h, src/highlight.c, src/testdir/test_highlight.vim
+
+Patch 8.2.3758
+Problem: Options that take a function insufficiently tested.
+Solution: Add additional tests and enhance existing tests. (Yegappan
+ Lakshmanan, closes #9298)
+Files: src/testdir/test_ins_complete.vim, src/testdir/test_normal.vim,
+ src/testdir/test_tagfunc.vim
+
+Patch 8.2.3759
+Problem: Quickfix buffer becomes hidden while still in a window.
+Solution: Check if the closed window is the last window showing the quickfix
+ buffer. (Yegappan Lakshmanan, closes #9303, closes #9300)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim, src/window.c
+
+Patch 8.2.3760
+Problem: Not automatically handling gnome terminal mouse like xterm.
+Solution: Default 'ttymouse' to "xterm" and recognize Focus events.
+ (issue #9296)
+Files: src/os_unix.c
+
+Patch 8.2.3761
+Problem: Focus change is not passed on to a terminal window.
+Solution: If the current window is a terminal and focus events are enabled
+ send a focus event escape sequence to the terminal.
+Files: src/ui.c, src/terminal.c, src/proto/terminal.pro,
+ src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_focus_1.dump,
+ src/testdir/dumps/Test_terminal_focus_2.dump
+
+Patch 8.2.3762
+Problem: If the quickfix buffer is wiped out getqflist() still returns its
+ number.
+Solution: Use zero if the buffer is no longer present. (Yegappan Lakshmanan,
+ closes #9306)
+Files: src/quickfix.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.3763
+Problem: When editing the command line a FocusLost callback may cause the
+ screen to scroll up.
+Solution: Do not redraw at the last line but at the same place where the
+ command line was before. (closes #9295)
+Files: src/ex_getln.c, src/ui.c, src/beval.c, src/channel.c,
+ src/drawscreen.c, src/proto/drawscreen.pro, src/job.c,
+ src/popupwin.c, src/sound.c, src/terminal.c, src/time.c,
+ src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_terminal_focus_1.dump,
+ src/testdir/dumps/Test_terminal_focus_2.dump,
+ src/testdir/dumps/Test_terminal_focus_3.dump
+
+Patch 8.2.3764
+Problem: Cannot see any text when window was made zero lines or zero
+ columns.
+Solution: Ensure there is at least one line and column. (fixes #9307)
+Files: src/window.c, src/proto/window.pro, src/normal.c, src/edit.c,
+ src/testdir/test_window_cmd.vim
+
+Patch 8.2.3765
+Problem: Vim9: cannot use a lambda for 'opfunc' and others.
+Solution: Convert the lambda to a string.
+Files: src/vim9compile.c, src/vim9.h, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3766
+Problem: Converting a funcref to a string leaves out "g:", causing the
+ meaning of the name depending on the context.
+Solution: Prepend "g:" for a global function.
+Files: src/eval.c, src/testdir/test_functions.vim
+
+Patch 8.2.3767 (after 8.2.3766)
+Problem: Crash when using NULL partial.
+Solution: Check for NULL.
+Files: src/eval.c
+
+Patch 8.2.3768
+Problem: timer_info() has the wrong repeat value in a timer callback.
+ (Sergey Vlasov)
+Solution: Do not add one to the repeat value when in the callback.
+ (closes #9294)
+Files: src/time.c, src/testdir/test_timers.vim
+
+Patch 8.2.3769
+Problem: Zig files are not recognized.
+Solution: Add *.zig. (Gregory Anders, closes #9313)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3770
+Problem: New compiler warnings from clang-12 and clang-13.
+Solution: Adjust CI and suppress some warnings. (Ozaki Kiichi, closes #9314)
+Files: .github/workflows/ci.yml, ci/config.mk.clang-12.sed,
+ src/os_unix.c, src/spellfile.c
+
+Patch 8.2.3771
+Problem: Vim9: accessing freed memory when checking type.
+Solution: Make a copy of a function type.
+Files: src/structs.h, src/evalvars.c, src/vim9script.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.3772
+Problem: Timer info test fails on slow machine.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_timers.vim
+
+Patch 8.2.3773
+Problem: Wrong window size when a modeline changes 'columns' and there is
+ more than one tabpage. (Michael Soyka)
+Solution: Adjust the frames of all tabpages. (closes #9315)
+Files: src/window.c
+
+Patch 8.2.3774 (after 8.2.3773)
+Problem: Test for command line height fails.
+Solution: Use another way to handle window size change.
+Files: src/structs.h, src/window.c
+
+Patch 8.2.3775
+Problem: Vim9: lambda compiled without outer context when debugging.
+Solution: When compiling a lambda for debugging also compile it without.
+ (closes #9302)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3776
+Problem: When a tags file line is long a tag may not be found.
+Solution: When increasing the buffer size read the same line again.
+Files: src/tag.c, src/testdir/test_taglist.vim
+
+Patch 8.2.3777
+Problem: Spell file write error not checked.
+Solution: Check writing the prefix conditions. (Bjorn Linse, closes #9323)
+Files: src/spellfile.c
+
+Patch 8.2.3778
+Problem: Lambda debug test fails in some configurations.
+Solution: Check feature in a legacy function.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.3779
+Problem: Using freed memory when defining a user command from a user
+ command.
+Solution: Do not use the command pointer after executing the command.
+ (closes #9318)
+Files: src/usercmd.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.3780
+Problem: ":cd" works differently on MS-Windows.
+Solution: Add the 'cdhome' option. (closes #9324)
+Files: runtime/doc/editing.txt, runtime/doc/options.txt,
+ runtime/doc/quickref.txt, runtime/optwin.vim, src/ex_docmd.c,
+ src/option.h, src/optiondefs.h, src/testdir/runtest.vim,
+ src/testdir/test_options.vim
+
+Patch 8.2.3781
+Problem: The option window script is outdated.
+Solution: Add several changes.
+Files: runtime/optwin.vim
+
+Patch 8.2.3782
+Problem: Vim9: no error if a function shadows a script variable.
+Solution: Check the function doesn't shadow a variable. (closes #9310)
+Files: src/userfunc.c, src/evalvars.c, src/vim.h,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3783
+Problem: Confusing error for using a variable as a function.
+Solution: If a function is not found but there is a variable, give a more
+ useful error. (issue #9310)
+Files: src/eval.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/structs.h, src/vim9execute.c, src/testdir/test_functions.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3784
+Problem: The help for options is outdated.
+Solution: Include all the recent changes.
+Files: runtime/doc/options.txt
+
+Patch 8.2.3785
+Problem: Running CI on macOS with gcc is not useful.
+Solution: Only use clang. (Ozaki Kiichi, closes #9326) Also build with
+ normal features.
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3786
+Problem: Test fails because of using Vim9 syntax in legacy function.
+Solution: Add "call".
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.3787
+Problem: No proper formatting of a C line comment after a statement.
+Solution: Find the start of the line comment, insert the comment leader and
+ indent the comment properly.
+Files: src/change.c, src/proto/change.pro, src/search.c,
+ src/proto/search.pro, src/cindent.c, src/edit.c, src/normal.c,
+ src/textformat.c, src/testdir/test_textformat.vim,
+ src/testdir/test_cindent.vim
+
+Patch 8.2.3788
+Problem: Lambda for option that is a function may be garbage collected.
+Solution: Set a reference in the funcref. (Yegappan Lakshmanan,
+ closes #9330)
+Files: src/eval.c, src/evalbuffer.c, src/evalvars.c, src/gui_xim.c,
+ src/insexpand.c, src/ops.c, src/proto/eval.pro,
+ src/proto/gui_xim.pro, src/proto/insexpand.pro, src/proto/ops.pro,
+ src/proto/tag.pro, src/quickfix.c, src/tag.c,
+ src/testdir/test_iminsert.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_normal.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_tagfunc.vim
+
+Patch 8.2.3789
+Problem: Test_window_minimal_size can fail on a slow machine.
+Solution: Do not rely on timers firing at the expected time. (Ozaki Kiichi,
+ closes #9335)
+Files: src/testdir/test_window_cmd.vim
+
+Patch 8.2.3790
+Problem: Test for term_gettitle() fails in some environments.
+Solution: Make the digits after "VIM" optional. (Kenta Sato, closes #9334)
+Files: src/testdir/test_terminal2.vim
+
+Patch 8.2.3791
+Problem: Build error with +cindent but without +smartindent.
+Solution: Move declaration of "do_cindent". (John Marriott)
+Files: src/change.c
+
+Patch 8.2.3792
+Problem: Setting *func options insufficiently tested.
+Solution: Improve tests. (Yegappan Lakshmanan, closes #9337)
+Files: src/testdir/test_iminsert.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_normal.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_tagfunc.vim
+
+Patch 8.2.3793
+Problem: Using "g:Func" as a funcref does not work in script context
+ because "g:" is dropped.
+Solution: Keep "g:" in the name. Also add parenthesis to avoid confusing
+ operator precedence. (closes #9336)
+Files: src/evalvars.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3794
+Problem: Vim9: cannot find script-local func using "s:". (Yegappan
+ Lakshmanan)
+Solution: Skip the "s:".
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3795
+Problem: Too many #ifdefs.
+Solution: Graduate the jumplist feature.
+Files: runtime/doc/various.txt, runtime/doc/motion.txt, src/feature.h,
+ src/buffer.c, src/change.c, src/evalfunc.c, src/ex_docmd.c,
+ src/mark.c, src/normal.c, src/undo.c, src/version.c,
+ src/viminfo.c, src/window.c, src/structs.h,
+ src/testdir/test_changelist.vim, src/testdir/test_jumplist.vim,
+ src/testdir/test_normal.vim
+
+Patch 8.2.3796
+Problem: The funcexe_T struct members are not named consistently.
+Solution: Prefix "fe_" to all the members.
+Files: src/structs.h, src/eval.c, src/list.c, src/regexp.c,
+ src/terminal.c, src/userfunc.c, src/vim9execute.c
+
+Patch 8.2.3797
+Problem: No good reason to limit the message history in the tiny version.
+Solution: Always use 200.
+Files: runtime/doc/message.txt, src/feature.h
+
+Patch 8.2.3798
+Problem: A :def callback function postpones an error message.
+Solution: Display the error after calling the function. (closes #9340)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim,
+ src/testdir/dumps/Test_opfunc_error.dump
+
+Patch 8.2.3799 (after 8.2.3798)
+Problem: Edit test hangs or fails.
+Solution: Do not rethrow an exception when inside try/catch.
+Files: src/userfunc.c
+
+Patch 8.2.3800
+Problem: When cross compiling the output of "uname" cannot be set. (Ben
+ Reeves)
+Solution: Use cache variables. (closes #9338)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.3801
+Problem: If a terminal shows in two windows, only one is redrawn.
+Solution: Reset the dirty row range only after redrawing all windows.
+ (closes #9341)
+Files: src/terminal.c, src/proto/terminal.pro, src/drawscreen.c,
+ src/testdir/test_terminal.vim
+
+Patch 8.2.3802
+Problem: Terminal in two windows test fails on some systems.
+Solution: Wait a bit between commands.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.3803
+Problem: Crash when 'writedelay' is set and using a terminal window to
+ execute a shell command.
+Solution: Check that "tl_vterm" isn't NULL. (closes #9346)
+Files: src/terminal.c
+
+Patch 8.2.3804
+Problem: Script context not set when copying 'swf' and 'ts'.
+Solution: Use COPY_OPT_SCTX with the right argument. (closes #9347)
+Files: src/option.c
+
+Patch 8.2.3805
+Problem: i3config files are not recognized.
+Solution: Add patterns to match i3config files. (Quentin Hibon,
+ closes #7969)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3806
+Problem: Terminal focus test fails sometimes.
+Solution: Run the test function before others.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.3807
+Problem: Vim9: can call import with star directly.
+Solution: Check that the import used star.
+Files: src/userfunc.c, src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3808
+Problem: Vim9: obsolete TODO items
+Solution: Remove the comments.
+Files: src/vim9execute.c
+
+Patch 8.2.3809
+Problem: Vim9: crash when garbage collecting a nested partial. (Virginia
+ Senioria)
+Solution: Set references in all the funcstacks. (closes #9348)
+Files: src/vim9execute.c, src/proto/vim9execute.pro, src/structs.h,
+ src/eval.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3810
+Problem: Vim9: expr4 test fails on MS-Windows.
+Solution: Do not give an error for a missing function name when skipping.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3811
+Problem: The opfunc error test fails on a slow machine.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.3812
+Problem: Vim9: leaking memory in numbered function test.
+Solution: Skip "g:" when checking for numbered function. Clean up after
+ errors properly.
+Files: src/userfunc.c
+
+Patch 8.2.3813
+Problem: confusing error when using :cc without error list. (Gary Johnson)
+Solution: Give the "no errors" error.
+Files: src/ex_docmd.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.3814
+Problem: .csx files and .sln files are not recognized.
+Solution: Add filetype patterns. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3815
+Problem: Vim9: cannot have a multi-line dict inside a block.
+Solution: Do not split the command at a line break, handle NL characters
+ as white space.
+Files: src/ex_docmd.c, src/charset.c, src/proto/charset.pro,
+ src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3816
+Problem: Compiler warning for possible loss of data on MS-Windows.
+Solution: Add type cast. (Mike Williams, closes #9349)
+Files: src/userfunc.c
+
+Patch 8.2.3817 (after 8.2.3815)
+Problem: Vim9: Not using NL as command end does not work for :autocmd.
+Solution: Only ignore NL for commands with an expression argument.
+Files: src/ex_cmds.h, src/ex_docmd.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.3818
+Problem: Cannot filter or map characters in a string.
+Solution: Make filter() and map() work on a string. (Naruhiko Nishino,
+ closes #9327)
+Files: runtime/doc/eval.txt, src/errors.h, src/list.c,
+ src/testdir/test_filter_map.vim
+
+Patch 8.2.3819 (after 8.2.3818)
+Problem: Test fails because error message changed.
+Solution: Update screendumps.
+Files: src/testdir/dumps/Test_popupwin_three_errors_1.dump,
+ src/testdir/dumps/Test_popupwin_three_errors_2.dump
+
+Patch 8.2.3820
+Problem: "vrc" does not replace composing characters, while "rc" does.
+Solution: Check the byte length including composing characters.
+ (closes #9351)
+Files: src/ops.c, src/testdir/test_visual.vim
+
+Patch 8.2.3821
+Problem: ASAN test run fails.
+Solution: Use asan_symbolize-13 instead of asan_symbolize-11.
+Files: .github/workflows/ci.yml
+
+Patch 8.2.3822
+Problem: Leaking memory in map() and filter(), cannot use a string argument
+ in Vim9 script.
+Solution: Fix the leak, adjust the argument check, also run the tests as
+ Vim9 script. (Yegappan Lakshmanan, closes #9354)
+Files: src/errors.h, src/evalfunc.c, src/list.c, src/proto/typval.pro,
+ src/testdir/test_filter_map.vim,
+ src/testdir/test_vim9_builtin.vim, src/typval.c
+
+Patch 8.2.3823
+Problem: Test for visual replace is in wrong function.
+Solution: Move it to another function.
+Files: src/testdir/test_visual.vim
+
+Patch 8.2.3824
+Problem: No ASAN support for MSVC.
+Solution: Add ASAN support and fix a couple of uncovered problems. (Yegappan
+ Lakshmanan, closes #9357)
+Files: src/Make_mvc.mak, src/findfile.c, src/os_mswin.c,
+ src/testdir/test_fnamemodify.vim
+
+Patch 8.2.3825
+Problem: Various comments could be improved.
+Solution: Improve the comments.
+Files: src/getchar.c, src/mbyte.c, src/regexp_nfa.c,
+ src/testdir/test_edit.vim, src/gui_motif.c
+
+Patch 8.2.3826
+Problem: Vim9: using "g:Func" as a funcref does not work in a :def
+ function.
+Solution: Include "g:" in the function name. (closes #9336)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3827
+Problem: Huntr badge does not really fit in the list.
+Solution: Move the link to Huntr to the issue template.
+Files: Filelist, .github/ISSUE_TEMPLATE/bug_report.yml, README.md
+
+Patch 8.2.3828
+Problem: when opening a terminal from a timer the first typed character
+ is lost. (Virginia Senioria)
+Solution: When opening a terminal while waiting for a character put K_IGNORE
+ in the input buffer.
+Files: src/terminal.c, src/edit.c, src/testdir/test_terminal.vim
+
+Patch 8.2.3829
+Problem: No error when setting a func option to a script-local function.
+Solution: Give an error if the name starts with "s:". (closes #9358)
+Files: src/option.c, src/testdir/test_tagfunc.vim,
+ src/testdir/dumps/Test_set_tagfunc_on_cmdline.dump
+
+Patch 8.2.3830
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/globals.h, src/errors.h, src/buffer.c, src/dict.c, src/diff.c,
+ src/digraph.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
+ src/misc2.c, src/quickfix.c, src/typval.c, src/ui.c,
+ src/userfunc.c, src/vim9compile.c, src/vim9execute.c,
+ src/vim9type.c, src/window.c
+
+Patch 8.2.3831
+Problem: Opfunc test fails when missing feature changes function name.
+ (Dominique Pellé)
+Solution: Check the relevant screen line instead of using a screendump.
+ (closes #9360)
+Files: src/testdir/test_vim9_func.vim,
+ src/testdir/dumps/Test_opfunc_error.dump
+
+Patch 8.2.3832 (after 8.2.3830)
+Problem: Test fails because of changed error message.
+Solution: Adjust the expected error message.
+Files: src/testdir/test_vimscript.vim
+
+Patch 8.2.3833
+Problem: Error from term_start() not caught by try/catch.
+Solution: save and restore did_emsg when applying autocommands. (Ozaki
+ Kiichi, closes #9361)
+Files: src/autocmd.c, src/testdir/test_terminal3.vim
+
+Patch 8.2.3834
+Problem: Test_out_cb often fails on Mac.
+Solution: Increase the timeout with every retry.
+Files: src/testdir/test_channel.vim
+
+Patch 8.2.3835
+Problem: The inline-function example does not work.
+Solution: Drop ":let". Add EX_EXPR_ARG to CMD_var. (issue #9352)
+Files: runtime/doc/vim9.txt, src/ex_cmds.h,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3836
+Problem: Vim9: comment after expression not skipped to find NL.
+Solution: After evaluating an expression look for a newline after a #
+ comment.
+Files: src/eval.c
+
+Patch 8.2.3837
+Problem: QNX: crash when compiled with GUI but using terminal.
+Solution: Check gui.in_use is set. (Hirohito Higashi, closes #9363)
+Files: src/autocmd.c
+
+Patch 8.2.3838
+Problem: Cannot use script-local function for setting *func options.
+Solution: Use the script context. (Yegappan Lakshmanan, closes #9362)
+Files: src/option.c, src/testdir/dumps/Test_set_tagfunc_on_cmdline.dump,
+ src/testdir/test_ins_complete.vim, src/testdir/test_normal.vim,
+ src/testdir/test_quickfix.vim, src/testdir/test_tagfunc.vim
+
+Patch 8.2.3839
+Problem: Using \z() with \z1 not tested for syntax highlighting.
+Solution: Add a test. (Dominique Pellé, closes #9365)
+Files: src/testdir/test_syntax.vim
+
+Patch 8.2.3840
+Problem: Useless test for negative index in check functions.
+Solution: Remove the test for negative index. (Naruhiko Nishino,
+ closes #9364)
+Files: src/typval.c
+
+Patch 8.2.3841
+Problem: Vim9: outdated TODO items, disabled tests that work.
+Solution: Remove TODO items, run tests that work now. Check that a dict
+ item isn't locked.
+Files: src/vim9execute.c, src/evalvars.c, src/errors.h, src/globals.h,
+ src/testdir/test_listdict.vim, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3842
+Problem: Vim9: can change locked list and list items.
+Solution: Check that a list and list item isn't locked.
+Files: src/vim9execute.c, src/testdir/test_listdict.vim
+
+Patch 8.2.3843
+Problem: Dep3patch files are not recognized.
+Solution: Recognize dep3patch files by their location and content. (James
+ McCoy, closes #9367)
+Files: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.3844
+Problem: Vim9: no type error if assigning a value with type func(number) to
+ a variable of type func(string).
+Solution: Use check_type_maybe(): return MAYBE if a runtime type check is
+ useful. (issue #8492)
+Files: src/vim9type.c, src/proto/vim9type.pro, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3845
+Problem: Vim9: test fails when the channel feature is missing.
+Solution: Check for the channel feature. (Dominique Pellé, closes #9368)
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3846
+Problem: No error when using control character for 'lcs' or 'fcs'.
+Solution: Use char2cells() to check the width. (closes #9369)
+Files: src/screen.c, src/testdir/test_display.vim,
+ src/testdir/test_listchars.vim
+
+Patch 8.2.3847
+Problem: Illegal memory access when using a lambda with an error.
+Solution: Avoid skipping over the NUL after a string.
+Files: src/eval.c, src/testdir/test_lambda.vim
+
+Patch 8.2.3848
+Problem: Cannot use reduce() for a string.
+Solution: Make reduce() work with a string. (Naruhiko Nishino, closes #9366)
+Files: runtime/doc/eval.txt, src/errors.h, src/evalfunc.c, src/list.c,
+ src/typval.c, src/proto/typval.pro, src/testdir/test_listdict.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3849
+Problem: Functions implementing reduce and map are too long.
+Solution: Use a function for each type of value. Add a few more test cases
+ and add to the help. (Yegappan Lakshmanan, closes #9370)
+Files: runtime/doc/eval.txt, src/list.c, src/testdir/test_listdict.vim
+
+Patch 8.2.3850
+Problem: Illegal memory access when displaying a partial.
+Solution: Terminate the string with a NUL. (closes #9371)
+Files: src/eval.c, src/testdir/test_messages.vim
+
+Patch 8.2.3851
+Problem: Vim9: overhead when comparing string, dict or function.
+Solution: Call the intended compare function directly. Refactor to avoid
+ duplicated code.
+Files: src/vim9execute.c, src/typval.c, src/proto/typval.pro
+
+Patch 8.2.3852
+Problem: Vim9: not enough tests.
+Solution: Also run existing tests for Vim9 script. Make errors more
+ consistent.
+Files: src/testdir/test_listdict.vim, src/eval.c, src/vim9compile.c,
+ src/errors.h
+
+Patch 8.2.3853
+Problem: Vim9: not enough tests.
+Solution: Run more existing tests for Vim9 script.
+Files: src/testdir/test_listdict.vim
+
+Patch 8.2.3854
+Problem: Vim9: inconsistent arguments for test functions.
+Solution: When :def function and script have different arguments use a list
+ with two items instead of a separate function.
+Files: src/testdir/vim9.vim, src/testdir/test_execute_func.vim,
+ src/testdir/test_float_func.vim, src/testdir/test_functions.vim,
+ src/testdir/test_glob2regpat.vim, src/testdir/test_listdict.vim,
+ src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3855
+Problem: Illegal memory access when displaying a blob.
+Solution: Append a NUL at the end. (Yegappan Lakshmanan, closes #9372)
+Files: src/blob.c, src/regexp_nfa.c, src/testdir/test_blob.vim,
+ src/testdir/test_messages.vim
+
+Patch 8.2.3856
+Problem: Vim9: not enough tests.
+Solution: Run more expression tests also with Vim9. Fix an uncovered
+ problem.
+Files: src/vim9compile.c, src/testdir/test_expr.vim, src/testdir/vim9.vim
+
+Patch 8.2.3857
+Problem: Vim9: inconsistent error for using function().
+Solution: Use a runtime type check for the result of function().
+ (closes #8492)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3858
+Problem: Vim9: not enough tests.
+Solution: Add tests for :try/:catch and :redir. Add missing type check.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.3859
+Problem: Vim9: some code lines not tested.
+Solution: Add a few specific tests.
+Files: src/vim9compile.c, src/testdir/test_vim9_cmd.vim, src/errors.h,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3860
+Problem: Vim9: codecov struggles with the file size.
+Solution: Split vim9compile.c into four files.
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9instr.c,
+ src/proto/vim9instr.pro, src/vim9expr.c, src/proto/vim9expr.pro,
+ src/vim9cmds.c, src/proto/vim9cmds.pro, src/vim9.h,
+ src/vim9execute.c, src/vim9script.c, src/proto.h,
+ src/Makefile, src/Make_ami.mak, src/Make_cyg_ming.mak,
+ src/Make_mvc.mak, src/Make_vms.mms
+
+Patch 8.2.3861
+Problem: List of distributed files is outdated.
+Solution: Add new files.
+Files: Filelist
+
+Patch 8.2.3862
+Problem: Crash on exit with EXITFREE and using win_execute().
+Solution: Also save and restore tp_topframe. (issue #9374)
+Files: src/evalwindow.c, src/testdir/test_execute_func.vim
+
+Patch 8.2.3863 (after 8.2.3860)
+Problem: Various build flags accidentally enabled.
+Solution: Revert several lines in Makefile.
+Files: src/Makefile
+
+Patch 8.2.3864
+Problem: Cannot disable requesting key codes from xterm.
+Solution: Add the 'xtermcodes' option, default on.
+Files: runtime/doc/options.txt, runtime/doc/term.txt, src/option.h,
+ src/optiondefs.h, src/term.c, runtime/optwin.vim
+
+Patch 8.2.3865
+Problem: Vim9: compiler complains about using "try" as a struct member.
+Solution: Rename "try" to "tryref".
+Files: src/vim9.h, src/vim9cmds.c, src/vim9execute.c, src/vim9instr.c
+
+Patch 8.2.3866
+Problem: Vim9: type checking global variables is inconsistent.
+Solution: Use the "unknown" type in more places.
+Files: src/globals.h, src/vim9expr.c, src/vim9instr.c, src/vim9cmds.c,
+ src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3867
+Problem: Implementation of some list functions too complicated.
+Solution: Refactor do_sort_uniq(), f_count() and extend() (Yegappan
+ Lakshmanan, closes #9378)
+Files: src/list.c
+
+Patch 8.2.3868 (after 8.2.3866)
+Problem: Vim9: function test fails.
+Solution: Add missing changes. Add test for earlier patch.
+Files: src/vim9type.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3869
+Problem: Vim9: type checking for "any" is inconsistent.
+Solution: Always use a runtime type check for using "any" for a more
+ specific type.
+Files: src/vim9type.c, src/vim9compile.c, src/vim9expr.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.3870
+Problem: MS-Windows: wrong working directory when opening two files with
+ right-click context menu. (Gabriel Dupras)
+Solution: Use the working directory and pass it on to the process creation.
+ (Nir Lichtman, closes #9382, closes #8874)
+Files: src/GvimExt/gvimext.cpp, src/GvimExt/gvimext.h
+
+Patch 8.2.3871
+Problem: List.c contains code for dict and blob.
+Solution: Refactor to put code where it belongs. (Yegappan Lakshmanan,
+ closes #9386)
+Files: src/blob.c, src/dict.c, src/list.c, src/proto/blob.pro,
+ src/proto/dict.pro, src/proto/list.pro, src/proto/strings.pro,
+ src/strings.c, src/structs.h, src/testdir/test_filter_map.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_sort.vim
+
+Patch 8.2.3872
+Problem: Vim9: finddir() and uniq() return types can be more specific.
+Solution: Adjust the return type.
+Files: src/evalfunc.c, src/testdir/vim9.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3873
+Problem: go.mod files are not recognized.
+Solution: Check for the file name. (closes #9380)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3874
+Problem: Cannot highlight the number column for a sign.
+Solution: Add the "numhl" argument. (James McCoy, closes #9381)
+Files: runtime/doc/options.txt, runtime/doc/sign.txt, src/drawline.c,
+ src/popupwin.c, src/proto/sign.pro, src/sign.c, src/structs.h,
+ src/testdir/test_signs.vim
+
+Patch 8.2.3875
+Problem: gcc complains about buffer overrun.
+Solution: Use mch_memmove() instead of STRCPY(). (John Marriott)
+Files: src/dict.c
+
+Patch 8.2.3876
+Problem: 'cindent' does not recognize inline namespace.
+Solution: Skip over "inline" to find "namespace". (closes #9383)
+Files: src/cindent.c, src/testdir/test_cindent.vim
+
+Patch 8.2.3877
+Problem: Function does not abort after a type error in compare
+Solution: Check getting number fails. (closes #9384)
+Files: src/typval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3878
+Problem: Vim9: debugger tries to read more lines than there are.
+Solution: Check the number of lines. (closes #9394)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3879
+Problem: getreg() and getregtype() contain dead code.
+Solution: Remove the needless check. (closes #9392) Also refactor to put
+ common code in a shared function.
+Files: src/evalfunc.c
+
+Patch 8.2.3880
+Problem: Solution filter files are not recognized.
+Solution: Add pattern *.slnf and use json. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3881
+Problem: QNX: crash when compiled with GUI but using terminal.
+Solution: Check the gui.in_use flag. (Hirohito Higashi, closes #9391)
+Files: src/main.c
+
+Patch 8.2.3882 (after 8.2.3879)
+Problem: More duplicated code in f_getreginfo().
+Solution: Also use getreg_get_regname(). (closes #9398)
+Files: src/evalfunc.c
+
+Patch 8.2.3883
+Problem: Crash when switching to other regexp engine fails.
+Solution: Check for regprog being NULL.
+Files: src/ex_cmds.c
+
+Patch 8.2.3884
+Problem: Crash when clearing the argument list while using it.
+Solution: Lock the argument list for ":all".
+Files: src/arglist.c, src/testdir/test_arglist.vim
+
+Patch 8.2.3885
+Problem: Arglist test fails.
+Solution: Adjust for locking the arglist for ":all".
+Files: src/testdir/test_arglist.vim
+
+Patch 8.2.3886
+Problem: Can define autocmd for every event by using "au!".
+Solution: Check if a command is present also for "au!".
+Files: src/autocmd.c, src/testdir/test_autocmd.vim,
+ src/testdir/test_arglist.vim
+
+Patch 8.2.3887
+Problem: E1135 is used for two different errors.
+Solution: Renumber one error.
+Files: src/errors.h, src/testdir/test_mapping.vim
+
+Patch 8.2.3888
+Problem: The argument list may contain duplicates.
+Solution: Add the :argdedeupe command. (Nir Lichtman, closes #6235)
+Files: runtime/doc/editing.txt, runtime/doc/index.txt, src/arglist.c,
+ src/ex_cmdidxs.h, src/ex_cmds.h, src/proto/arglist.pro,
+ src/testdir/test_arglist.vim
+
+Patch 8.2.3889
+Problem: Duplicate code for translating script-local function name.
+Solution: Move the code to get_scriptlocal_funcname(). (Yegappan Lakshmanan,
+ closes #9393)
+Files: src/evalfunc.c, src/evalvars.c, src/option.c, src/userfunc.c,
+ src/proto/userfunc.pro, src/testdir/test_expr.vim,
+ src/testdir/test_normal.vim
+
+Patch 8.2.3890
+Problem: Vim9: type check for using v: variables is basic.
+Solution: Specify a more precise type.
+Files: src/evalvars.c, src/proto/evalvars.pro, src/vim9instr.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.3891
+Problem: Github CI: workflows may overlap.
+Solution: Cancel previous workflows when starting a new one. (Yegappan
+ Lakshmanan, closes #9400)
+Files: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml
+
+Patch 8.2.3892
+Problem: When modifyOtherKeys is used CTRL-C is not recognized.
+Solution: Check for uppercase C as well, fix minimum length.
+Files: src/ui.c
+
+Patch 8.2.3893
+Problem: Vim9: many local variables are initialized with an instruction.
+Solution: Initialize local variables to zero to avoid the instructions.
+Files: src/vim9execute.c, src/vim9compile.c, src/vim9instr.c,
+ src/proto/vim9instr.pro, src/vim9cmds.c,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3894
+Problem: Vim9: no proper type check for first argument of call().
+Solution: Add specific type check.
+Files: src/evalfunc.c, src/typval.c, src/proto/typval.pro,
+ src/errors.h, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3895
+Problem: Vim9: confusing error when using function() with a number.
+Solution: Check for a function or string argument.
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3896
+Problem: Vim9: no test for nested function not available later.
+Solution: Add a test.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.3897
+Problem: Vim9: the second argument of map() and filter() is not checked at
+ compile time.
+Solution: Add more specific type check for the second argument.
+Files: src/evalfunc.c, src/globals.h, src/list.c,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3898
+Problem: Vim9: not sufficient testing for variable initialization.
+Solution: Add another test case.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3899 (after 8.2.3897)
+Problem: Vim9: test for map() on string fails.
+Solution: Expect string return type.
+Files: src/evalfunc.c
+
+Patch 8.2.3900
+Problem: It is not easy to use a script-local function for an option.
+Solution: recognize s: and <SID> at the start of the expression. (Yegappan
+ Lakshmanan, closes #9401)
+Files: runtime/doc/diff.txt, runtime/doc/fold.txt,
+ runtime/doc/options.txt, runtime/doc/print.txt, src/optionstr.c,
+ src/testdir/test_diffmode.vim, src/testdir/test_edit.vim,
+ src/testdir/test_fold.vim, src/testdir/test_gf.vim,
+ src/testdir/test_gui.vim, src/testdir/test_hardcopy.vim,
+ src/testdir/test_normal.vim
+
+Patch 8.2.3901
+Problem: Vim9: Cannot set 'cpo' in main .vimrc if using Vim9 script.
+Solution: Do not restore 'cpo' at the end of the main .vimrc.
+Files: runtime/doc/vim9.txt, runtime/doc/options.txt, src/scriptfile.c,
+ src/structs.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.3902
+Problem: Vim9: double free with nested :def function.
+Solution: Pass "line_to_free" from compile_def_function() and make sure
+ cmdlinep is valid.
+Files: src/vim9compile.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3903
+Problem: "gM" does not count tabs as expected.
+Solution: Use linetabsize() instead of mb_string2cells(). (closes #9409)
+Files: src/normal.c, src/testdir/test_normal.vim
+
+Patch 8.2.3904
+Problem: Vim9: skip expression type is not checked at compile time.
+Solution: Add argument type checks.
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3905
+Problem: Dockerfile using prefix name not recognized.
+Solution: Recognize Dockerfile.*. (closes #9410)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3906
+Problem: Vim9 help still contains "under development" warnings.
+Solution: Remove the explicit warning.
+Files: runtime/doc/vim9.txt
+
+Patch 8.2.3907
+Problem: Error messages are spread out.
+Solution: Move error messages to errors.h. Avoid duplicates.
+Files: src/userfunc.c, src/ex_cmds.c, src/viminfo.c, src/errors.h,
+ src/testdir/test_user_func.vim
+
+Patch 8.2.3908
+Problem: Cannot use a script-local function for 'foldtext'.
+Solution: Expand "s:" and "<SID>". (Yegappan Lakshmanan, closes #9411)
+Files: runtime/doc/fold.txt, src/optionstr.c, src/strings.c,
+ src/testdir/test_blob.vim, src/testdir/test_expr.vim,
+ src/testdir/test_filter_map.vim, src/testdir/test_fold.vim,
+ src/testdir/test_listdict.vim
+
+Patch 8.2.3909
+Problem: Containerfile using prefix name not recognized.
+Solution: Recognize Containerfile.*.
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3910
+Problem: When the compare function of sort() produces and error then sort()
+ does not abort.
+Solution: Check if did_emsg was incremented.
+Files: src/list.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3911
+Problem: Vim9: type check for filter() does not accept unknown.
+Solution: Also accept unknown for the return type. (closes #9413)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3912
+Problem: The ins_complete() function is much too long.
+Solution: Split it up into multiple functions. (Yegappan Lakshmanan,
+ closes #9414)
+Files: src/insexpand.c
+
+Patch 8.2.3913
+Problem: Help for expressions does not mention Vim9 syntax.
+Solution: Add the rules for Vim9 to the expression help. Rename functions
+ to match the help.
+Files: runtime/doc/vim9.txt, runtime/doc/eval.txt, src/vim9expr.c
+
+Patch 8.2.3914
+Problem: Various spelling mistakes in comments.
+Solution: Fix the mistakes. (Dominique Pellé, closes #9416)
+Files: src/alloc.c, src/blowfish.c, src/buffer.c, src/cindent.c,
+ src/clipboard.c, src/diff.c, src/drawline.c, src/edit.c,
+ src/ex_cmds.c, src/ex_docmd.c, src/findfile.c, src/fold.c,
+ src/getchar.c, src/gui.c, src/gui_athena.c, src/gui_gtk.c,
+ src/gui_motif.c, src/gui_photon.c, src/gui_w32.c, src/gui_xmebw.c,
+ src/if_python.c, src/if_python3.c, src/if_xcmdsrv.c, src/main.c,
+ src/memline.c, src/menu.c, src/message.c, src/misc1.c, src/move.c,
+ src/option.c, src/os_amiga.c, src/os_mac.h, src/os_mac_conv.c,
+ src/os_mswin.c, src/os_unix.c, src/os_win32.c, src/os_win32.h,
+ src/quickfix.c, src/regexp_nfa.c, src/screen.c, src/scriptfile.c,
+ src/spell.c, src/spellfile.c, src/spellsuggest.c, src/strings.c,
+ src/term.c, src/terminal.c, src/testdir/test_debugger.vim,
+ src/testdir/test_source.vim, src/textformat.c, src/userfunc.c,
+ src/vim.h, src/vim9.h, src/vim9cmds.c, src/vim9execute.c,
+ src/winclip.c, src/window.c
+
+Patch 8.2.3915
+Problem: illegal memory access when completing with invalid bytes.
+Solution: Avoid going over the end of the completion text.
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.3916
+Problem: No error for passing an invalid line number to append().
+Solution: In Vim9 script check for a non-negative number. (closes #9417)
+Files: src/evalbuffer.c, src/textprop.c, src/errors.h, src/indent.c,
+ src/eval.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3917
+Problem: The eval.txt help file is way too big.
+Solution: Move the builtin function details to a separate file.
+Files: runtime/doc/eval.txt, runtime/doc/builtin.txt,
+ runtime/doc/Makefile, runtime/doc/help.txt, runtime/doc/remote.txt
+
+Patch 8.2.3918 (after 8.2.3916)
+Problem: Function list test fails.
+Solution: Adjust the test for the new location of the function list.
+Files: src/testdir/test_function_lists.vim
+
+Patch 8.2.3919
+Problem: Vim9: wrong argument for append() results in two errors.
+Solution: Check did_emsg. Also for setline(). Adjust the help for
+ appendbufline().
+Files: runtime/doc/builtin.txt, src/evalbuffer.c, src/typval.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3920
+Problem: Restoring directory after using another window is inefficient.
+Solution: Only restore the directory for win_execute(). Apply 'autochdir'
+ only when needed.
+Files: src/evalwindow.c, src/testdir/test_autochdir.vim
+
+Patch 8.2.3921
+Problem: The way xdiff is used is inefficient.
+Solution: Use hunk_func instead of the out_line callback. (Lewis Russell,
+ closes #9344)
+Files: src/diff.c
+
+Patch 8.2.3922
+Problem: Cannot build with dynamic Ruby 3.1.
+Solution: Add "_EXTRA" variables for CI. Add missing functions. (Ozaki
+ Kiichi, closes #9420)
+Files: ci/config.mk.clang-12.sed, ci/config.mk.clang.sed,
+ ci/config.mk.sed, src/Makefile, src/auto/configure,
+ src/config.mk.in, src/configure.ac, src/if_ruby.c, src/vim.h
+
+Patch 8.2.3923
+Problem: Vim9: double free if a nested function has a line break in the
+ argument list.
+Solution: Set cmdlinep when freeing the previous line.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3924
+Problem: Vim9: no error if something follows :enddef in a nested function.
+Solution: Give an error. Move common code to a function.
+Files: src/userfunc.c, src/vim9compile.c, src/errors.h,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.3925
+Problem: Diff mode confused by NUL bytes.
+Solution: Handle NUL bytes differently. (Christian Brabandt, closes #9421,
+ closes #9418)
+Files: src/diff.c, src/testdir/test_diffmode.vim,
+ src/testdir/dumps/Test_diff_bin_01.dump,
+ src/testdir/dumps/Test_diff_bin_02.dump,
+ src/testdir/dumps/Test_diff_bin_03.dump,
+ src/testdir/dumps/Test_diff_bin_04.dump
+
+Patch 8.2.3926 (after 8.2.3920)
+Problem: Build failure without the 'autochdir' option. (John Marriott)
+Solution: Add #ifdefs.
+Files: src/evalwindow.c
+
+Patch 8.2.3927
+Problem: Vim9: double free when using lambda.
+Solution: Don't free both cmdline and line_to_free.
+Files: src/userfunc.c
+
+Patch 8.2.3928
+Problem: Heredoc test fails.
+Solution: Correct order of function arguments.
+Files: src/userfunc.c
+
+Patch 8.2.3929
+Problem: Using uninitialized variable.
+Solution: Set the option flags to zero for a terminal option.
+Files: src/option.c
+
+Patch 8.2.3930
+Problem: getcmdline() argument has a misleading type.
+Solution: Use the correct type, even though the value is not used.
+Files: src/ex_getln.c, src/proto/ex_getln.pro, src/ex_docmd.c,
+ src/normal.c, src/register.c, src/userfunc.c
+
+Patch 8.2.3931
+Problem: Coverity reports a memory leak.
+Solution: Free memory in case of failure.
+Files: src/diff.c
+
+Patch 8.2.3932
+Problem: C line comment not formatted properly.
+Solution: If a line comment follows after "#if" the next line is not the end
+ of a paragraph.
+Files: src/textformat.c, src/testdir/test_textformat.vim
+
+Patch 8.2.3933
+Problem: After ":cd" fails ":cd -" is incorrect.
+Solution: Set the previous directory only after successfully changing
+ directory. (Richard Doty, closes #9419, closes #8983)
+Files: src/ex_docmd.c, src/testdir/test_cd.vim
+
+Patch 8.2.3934
+Problem: Repeating line comment is undesired for "O" command.
+Solution: Do not copy line comment leader for "O". (closes #9426)
+Files: src/change.c, src/testdir/test_textformat.vim
+
+Patch 8.2.3935
+Problem: CTRL-U in Insert mode does not fix the indent.
+Solution: Fix the indent when 'cindent' is set.
+Files: src/edit.c, src/testdir/test_textformat.vim
+
+Patch 8.2.3936
+Problem: No proper test for maintaining change mark in diff mode.
+Solution: Run the test with internal and external diff. (Sean Dewar,
+ closes #9424)
+Files: src/testdir/test_diffmode.vim
+
+Patch 8.2.3937
+Problem: Insert mode completion function is too long.
+Solution: Refactor into multiple functions. (Yegappan Lakshmanan,
+ closes #9423)
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.3938
+Problem: Line comment start is also found in a string.
+Solution: Skip line comments in a string.
+Files: src/cindent.c, src/proto/cindent.pro, src/search.c,
+ src/testdir/test_textformat.vim
+
+Patch 8.2.3939
+Problem: MS-Windows: fnamemodify('', ':p') does not work.
+Solution: Do not consider an empty string a full path. (Yegappan Lakshmanan,
+ closes #9428, closes #9427)
+Files: src/os_mswin.c, src/testdir/test_fnamemodify.vim
+
+Patch 8.2.3940
+Problem: Match highlight disappears when doing incsearch for ":s/pat".
+Solution: Only use line limit for incsearch highlighting. (closes #9425)
+Files: src/match.c, src/testdir/test_match.vim,
+ src/testdir/dumps/Test_match_with_incsearch_1.dump,
+ src/testdir/dumps/Test_match_with_incsearch_2.dump
+
+Patch 8.2.3941
+Problem: SIGTSTP is not handled.
+Solution: Handle SIGTSTP like pressing CTRL-Z. (closes #9422)
+Files: runtime/doc/autocmd.txt, src/ex_docmd.c, src/os_unix.c,
+ src/proto/ex_docmd.pro, src/testdir/test_signals.vim
+
+Patch 8.2.3942
+Problem: Coverity reports a possible memory leak.
+Solution: Free the array if allocation fails.
+Files: src/insexpand.c
+
+Patch 8.2.3943
+Problem: Compiler warning from gcc for uninitialized variable.
+Solution: Initialize variable. (closes #9429)
+Files: src/diff.c
+
+Patch 8.2.3944
+Problem: Insert mode completion functions are too long.
+Solution: Split up into multiple functions. (Yegappan Lakshmanan,
+ closes #9431)
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.3945
+Problem: Vim9: partial variable argument types are wrong, leading to a
+ crash.
+Solution: When adjusting the argument count also adjust the argument types.
+ (closes #9433)
+Files: src/vim9type.c, src/userfunc.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3946
+Problem: When an internal error makes Vim exit the error is not seen.
+Solution: Add the error to the test output.
+Files: src/message.c, src/testdir/runtest.vim
+
+Patch 8.2.3947
+Problem: Unnecessary check for NULL pointer.
+Solution: Remove the check. (closes #9434)
+Files: src/ex_docmd.c
+
+Patch 8.2.3948
+Problem: Vim9: failure with partial with unknown argument count.
+Solution: Do not copy argument types if there aren't any.
+Files: src/vim9type.c
+
+Patch 8.2.3949
+Problem: Using freed memory with /\%V.
+Solution: Get the line again after getvvcol().
+Files: src/regexp.c, src/testdir/test_regexp_latin.vim
+
+Patch 8.2.3950
+Problem: Going beyond the end of the line with /\%V.
+Solution: Check for valid column in getvcol().
+Files: src/charset.c, src/testdir/test_regexp_latin.vim
+
+Patch 8.2.3951
+Problem: Vim9: memory leak when text after a nested function.
+Solution: Free the function if text is found after "enddef".
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3952
+Problem: First line not redrawn when adding lines to an empty buffer.
+Solution: Adjust the argument to appended_lines(). (closes #9439,
+ closes #9438)
+Files: src/ex_cmds.c, src/testdir/test_excmd.vim
+
+Patch 8.2.3953
+Problem: Insert completion code is too complicated.
+Solution: More refactoring. Move function arguments into a struct.
+ (Yegappan Lakshmanan, closes #9437)
+Files: src/insexpand.c
+
+Patch 8.2.3954
+Problem: Vim9: no error for shadowing if script var is declared later.
+Solution: Check argument names when compiling a function.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.3955
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/debugger.c, src/ex_cmds.c,
+ src/help.c, src/sign.c, src/spellfile.c
+
+Patch 8.2.3956
+Problem: Duplicate assignment.
+Solution: Remove the second assignment. (closes #9442)
+Files: src/evalfunc.c
+
+Patch 8.2.3957
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/arglist.c, src/bufwrite.c,
+ src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
+ src/help.c, src/scriptfile.c, src/usercmd.c, src/userfunc.c,
+ src/vim9cmds.c, src/vim9compile.c
+
+Patch 8.2.3958
+Problem: Build failure compiling xxd with "-std=c2x".
+Solution: define _XOPEN_SOURCE. (Yegappan Lakshmanan, closes #9444)
+Files: src/xxd/xxd.c
+
+Patch 8.2.3959
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/autocmd.c, src/bufwrite.c, src/evalvars.c,
+ src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/fileio.c,
+ src/getchar.c, src/gui.c, src/locale.c, src/map.c
+
+Patch 8.2.3960
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/alloc.c, src/arglist.c, src/autocmd.c,
+ src/blob.c, src/blowfish.c, src/buffer.c, src/bufwrite.c
+
+Patch 8.2.3961
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/arglist.c, src/autocmd.c,
+ src/blob.c, src/bufwrite.c, src/channel.c, src/clipboard.c,
+ src/cmdexpand.c, src/debugger.c, src/dict.c, src/eval.c,
+ src/evalfunc.c, src/evalvars.c, src/evalwindow.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/fileio.c,
+ src/filepath.c, src/gui_gtk_x11.c, src/gui_haiku.cc,
+ src/gui_photon.c, src/gui_w32.c, src/gui_x11.c, src/highlight.c,
+ src/indent.c, src/insexpand.c, src/job.c, src/json.c, src/list.c,
+ src/map.c, src/mark.c, src/match.c, src/mbyte.c, src/menu.c,
+ src/message.c, src/misc2.c, src/ops.c, src/option.c,
+ src/optionstr.c, src/popupwin.c, src/quickfix.c, src/screen.c,
+ src/scriptfile.c, src/search.c, src/sign.c, src/spell.c,
+ src/spellfile.c, src/strings.c, src/syntax.c, src/terminal.c,
+ src/testing.c, src/textprop.c, src/time.c, src/userfunc.c,
+ src/vim9cmds.c, src/vim9execute.c, src/vim9script.c, src/window.c
+
+Patch 8.2.3962 (after 8.2.3961)
+Problem: Build fails for missing error message.
+Solution: Add changes in missed file.
+Files: src/regexp_bt.c
+
+Patch 8.2.3963
+Problem: Build failure with tiny and small features. (Tony Mechelynck)
+Solution: Adjust #ifdefs.
+Files: src/errors.h, src/message.c
+
+Patch 8.2.3964
+Problem: Some common lisp and scheme files not recognized.
+Solution: Recognize *.asd as lisp and *.sld as scheme. (Alex Vear,
+ closes #9447)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3965
+Problem: Vim9: no easy way to check if Vim9 script is supported.
+Solution: Add has('vim9script').
+Files: runtime/doc/vim9.txt, src/evalfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.3966
+Problem: When using feedkeys() abbreviations may be blocked.
+Solution: Reset tb_no_abbr_cnt when running out of characters.
+ (closes #9448)
+Files: src/getchar.c, src/testdir/test_feedkeys.vim
+
+Patch 8.2.3967
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/feature.h, src/arglist.c,
+ src/autocmd.c, src/blob.c, src/bufwrite.c, src/channel.c,
+ src/cmdexpand.c, src/dict.c, src/diff.c, src/eval.c,
+ src/evalfunc.c, src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c,
+ src/fileio.c, src/filepath.c, src/getchar.c, src/gui_gtk_x11.c,
+ src/gui_x11.c, src/hardcopy.c, src/help.c, src/highlight.c,
+ src/if_cscope.c, src/if_lua.c, src/if_mzsch.c, src/if_perl.xs,
+ src/if_python.c, src/if_python3.c, src/if_ruby.c, src/if_tcl.c,
+ src/if_xcmdsrv.c, src/indent.c, src/insexpand.c, src/job.c,
+ src/list.c, src/main.c, src/map.c, src/match.c, src/mbyte.c,
+ src/message.c, src/misc1.c, src/option.c, src/optionstr.c,
+ src/os_mswin.c, src/os_unix.c, src/os_win32.c, src/popupwin.c,
+ src/profiler.c, src/quickfix.c, src/scriptfile.c, src/search.c,
+ src/session.c, src/sign.c, src/spell.c, src/spellfile.c,
+ src/spellsuggest.c, src/syntax.c, src/tag.c, src/terminal.c,
+ src/testing.c, src/textprop.c, src/typval.c, src/userfunc.c,
+ src/vim9execute.c, src/vim9expr.c, src/vim9instr.c,
+ src/vim9script.c
+
+Patch 8.2.3968
+Problem: Build failure.
+Solution: Add missing changes.
+Files: src/strings.c, src/vim9compile.c
+
+Patch 8.2.3969
+Problem: Value of MAXCOL not available in Vim script.
+Solution: Add v:maxcol. (Naohiro Ono, closes #9451)
+Files: runtime/doc/builtin.txt, runtime/doc/eval.txt, src/evalvars.c,
+ src/testdir/test_cursor_func.vim, src/testdir/test_normal.vim,
+ src/testdir/test_put.vim, src/vim.h
+
+Patch 8.2.3970
+Problem: Error messages are spread out.
+Solution: Move more errors to errors.h.
+Files: src/errors.h, src/globals.h, src/buffer.c, src/bufwrite.c,
+ src/clientserver.c, src/cmdhist.c, src/dict.c, src/edit.c,
+ src/eval.c, src/evalfunc.c, src/evalvars.c, src/ex_cmds.c,
+ src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c, src/gui_w32.c,
+ src/gui_x11.c, src/if_xcmdsrv.c, src/insexpand.c, src/json.c,
+ src/match.c, src/menu.c, src/option.c, src/optionstr.c,
+ src/os_mswin.c, src/quickfix.c, src/regexp_bt.c, src/regexp_nfa.c,
+ src/scriptfile.c, src/sign.c, src/spellfile.c, src/undo.c,
+ src/userfunc.c, src/vim9cmds.c, src/vim9compile.c,
+ src/vim9execute.c, src/vim9expr.c, src/window.c
+
+Patch 8.2.3971
+Problem: Build fails.
+Solution: Use the right error message name.
+Files: src/typval.c
+
+Patch 8.2.3972
+Problem: Error messages are spread out.
+Solution: Move the last errors from globals.h to errors.h.
+Files: src/errors.h, src/globals.h, src/eval.c, src/evalfunc.c,
+ src/evalvars.c, src/evalwindow.c, src/ex_eval.c, src/list.c,
+ src/match.c, src/menu.c, src/popupmenu.c, src/search.c,
+ src/vim9cmds.c, src/vim9expr.c
+
+Patch 8.2.3973
+Problem: Tiny build fails.
+Solution: Adjust #ifdefs
+Files: src/errors.h
+
+Patch 8.2.3974
+Problem: Vim9: LISTAPPEND instruction does not check for a locked list.
+Solution: Check whether the list is locked. (closes #9452)
+Files: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3975
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/clientserver.c, src/fileio.c, src/gui.c,
+ src/gui_beval.c, src/gui_w32.c, src/gui_x11.c, src/if_cscope.c,
+ src/if_xcmdsrv.c, src/os_mswin.c, src/sign.c, src/viminfo.c,
+ src/window.c
+
+Patch 8.2.3976
+Problem: FEARG_LAST is never used. (Dominique Pellé)
+Solution: Remove FEARG_LAST and the related code.
+Files: src/evalfunc.c
+
+Patch 8.2.3977
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/change.c, src/clientserver.c, src/eval.c,
+ src/gui_xim.c, src/if_cscope.c, src/if_py_both.h, src/if_python.c,
+ src/if_python3.c, src/if_ruby.c, src/if_tcl.c, src/main.c,
+ src/mark.c, src/match.c, src/memfile.c, src/memline.c,
+ src/terminal.c, src/textprop.c, src/userfunc.c
+
+Patch 8.2.3978
+Problem: Build error when using dynamically loaded Python 3.
+Solution: Adjust #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3979
+Problem: Vim9: the feature is not mentioned in the right places.
+Solution: Add +vim9script to the help and :version output.
+Files: runtime/doc/builtin.txt, runtime/doc/various.txt, src/version.c
+
+Patch 8.2.3980
+Problem: If 'operatorfunc' invokes an operator the remembered Visual mode
+ may be changed. (Naohiro Ono)
+Solution: Save and restore the information for redoing the Visual area.
+ (closes #9455)
+Files: src/ops.c, src/testdir/test_normal.vim
+
+Patch 8.2.3981
+Problem: Vim9: debugging a for loop doesn't stop before it starts.
+Solution: Keep the DEBUG instruction before the expression is evaluated.
+ (closes #9456)
+Files: src/vim9cmds.c, src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3982
+Problem: Some lines of code not covered by tests.
+Solution: Add a few more test cases. (Dominique Pellé, closes #9453)
+Files: src/testdir/test_filter_map.vim, src/testdir/test_highlight.vim,
+ src/testdir/test_regexp_latin.vim, src/testdir/test_search.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3983
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/ex_docmd.c, src/fileio.c, src/filepath.c,
+ src/findfile.c, src/hardcopy.c, src/memfile.c, src/memline.c,
+ src/menu.c, src/normal.c, src/regexp_bt.c
+
+Patch 8.2.3984 (after 8.2.3981)
+Problem: Debugger test fails.
+Solution: Adjust the test for modified debugging of a for loop.
+Files: src/testdir/test_debugger.vim
+
+Patch 8.2.3985
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/findfile.c, src/fold.c, src/hardcopy.c,
+ src/highlight.c, src/map.c, src/message.c, src/normal.c,
+ src/option.c, src/os_amiga.c, src/os_unix.c, src/os_win32.c,
+ src/quickfix.c, src/regexp.c, src/register.c, src/search.c,
+ src/syntax.c, src/tag.c, src/term.c, src/typval.c, src/undo.c,
+ src/window.c
+
+Patch 8.2.3986
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c,
+ src/fileio.c, src/fold.c, src/gui_x11.c, src/hardcopy.c,
+ src/help.c, src/highlight.c, src/if_cscope.c, src/json.c,
+ src/map.c, src/netbeans.c, src/popupwin.c, src/usercmd.c,
+ src/userfunc.c
+
+Patch 8.2.3987
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/digraph.c, src/ex_eval.c, src/gui.c,
+ src/hardcopy.c, src/if_cscope.c, src/if_tcl.c, src/if_xcmdsrv.c,
+ src/mbyte.c, src/misc2.c, src/netbeans.c, src/option.c,
+ src/optionstr.c, src/quickfix.c, src/regexp.c, src/tag.c,
+ src/term.c, src/viminfo.c
+
+Patch 8.2.3988 (after 8.2.3987)
+Problem: Tiny build fails.
+Solution: Fix misplaced #ifdef.
+Files: src/errors.h
+
+Patch 8.2.3989
+Problem: Some insert completion code is not tested.
+Solution: Add a few tests. Refactor thesaurus completion. (Yegappan
+ Lakshmanan, closes #9460)
+Files: src/insexpand.c, src/testdir/test_edit.vim,
+ src/testdir/test_ins_complete.vim
+
+Patch 8.2.3990
+Problem: Testing wrong operator.
+Solution: Test "g@" instead of "r_". (Naohiro Ono, closes #9463)
+Files: src/testdir/test_normal.vim
+
+Patch 8.2.3991
+Problem: Vim9: error when extending dict<any> with another type that it was
+ initialized with.
+Solution: Also set the type for dict<any> if the initializer has a more
+ specific type. (closes #9461)
+Files: src/vim9compile.c, src/vim9type.c, src/vim9.h, src/eval.c,
+ src/list.c, src/vim9script.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.3992
+Problem: Wrong local-additions in the help with language mix.
+Solution: Adjust how the local additions list is generated. (Hirohito
+ Higashi, closes #9464)
+Files: src/help.c, src/testdir/test_help.vim
+
+Patch 8.2.3993
+Problem: When recording a change in Select mode the first typed character
+ appears twice.
+Solution: When putting the character back into typeahead remove it from
+ recorded characters. (closes #9462)
+Files: src/getchar.c, src/proto/getchar.pro, src/normal.c,
+ src/testdir/test_registers.vim
+
+Patch 8.2.3994
+Problem: Vim9: extend() complains about the type even when it was not
+ declared.
+Solution: Only check the list or dict type when it was declared.
+Files: src/list.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3995
+Problem: Not all sshconfig files are detected as such.
+Solution: Adjust the patterns used for sshconfig detection. (David Auer,
+ closes #9322)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.3996
+Problem: Vim9: type checking for list and dict lacks information about
+ declared type.
+Solution: Add dv_decl_type and lv_decl_type. Refactor the type stack to
+ store two types in each entry.
+Files: src/structs.h, src/dict.c, src/list.c, src/vim9type.c,
+ src/proto/vim9type.pro, src/vim9instr.c, src/proto/vim9instr.pro,
+ src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/evalbuffer.c, src/proto/evalbuffer.pro, src/vim9expr.c,
+ src/vim9cmds.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.3997
+Problem: Vim9: not enough testing for extend() and map().
+Solution: Add more test cases. Fix uncovered problems. Remove unused type
+ fields.
+Files: src/structs.h, src/dict.c, src/list.c, src/vim9compile.c,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.3998
+Problem: Asan error for adding zero to NULL.
+Solution: Do not compute pointer if there are no entries.
+Files: src/vim9type.c
+
+Patch 8.2.3999
+Problem: Redundant check for NUL byte.
+Solution: Remove the check for a NUL byte. (closes #9471)
+Files: src/ex_docmd.c
+
+Patch 8.2.4000
+Problem: Coverity warns for checking for NULL pointer after using it.
+Solution: Remove check for NULL.
+Files: src/help.c
+
+Patch 8.2.4001
+Problem: Insert complete code uses global variables.
+Solution: Make variables local to the file and use accessor functions.
+ (Yegappan Lakshmanan, closes #9470)
+Files: src/edit.c, src/getchar.c, src/globals.h, src/insexpand.c,
+ src/proto/insexpand.pro, src/search.c
+
+Patch 8.2.4002
+Problem: First char typed in Select mode can be wrong.
+Solution: Escape special bytes in the input buffer. (closes #9469)
+Files: src/getchar.c, src/testdir/test_utf8.vim
+
+Patch 8.2.4003
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/channel.c, src/ex_docmd.c, src/ex_eval.c,
+ src/gui_at_fs.c, src/hardcopy.c, src/if_cscope.c, src/menu.c,
+ src/netbeans.c, src/optionstr.c, src/os_mswin.c, src/sign.c,
+ src/typval.c
+
+Patch 8.2.4004
+Problem: Old compiler complains about struct init with variable.
+Solution: Set the struct member later. (John Marriott)
+Files: src/evalfunc.c
+
+Patch 8.2.4005
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/dict.c, src/eval.c, src/evalfunc.c,
+ src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
+ src/filepath.c, src/gui.c, src/gui_w32.c, src/hardcopy.c,
+ src/help.c, src/highlight.c, src/if_python.c, src/list.c,
+ src/misc1.c, src/normal.c, src/quickfix.c, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/typval.c, src/userfunc.c
+
+Patch 8.2.4006
+Problem: Vim9: crash when declaring variable on the command line.
+Solution: Use a temporary type list. (closes #9474)
+Files: src/eval.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4007
+Problem: Session does not restore help buffer properly when "options' is
+ missing from 'sessionoptions'.
+Solution: Use a ":help" command to create the help window. (closes #9475,
+ closes #9458, closes #9472)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.4008
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/diff.c, src/digraph.c, src/evalfunc.c,
+ src/evalvars.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
+ src/insexpand.c, src/match.c, src/memline.c, src/menu.c,
+ src/ops.c, src/profiler.c, src/quickfix.c, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/spell.c,
+ src/spell.h, src/spellfile.c, src/strings.c, src/syntax.c,
+ src/typval.c, src/undo.c, src/userfunc.c
+
+Patch 8.2.4009
+Problem: Reading one byte beyond the end of the line.
+Solution: Check for NUL byte first.
+Files: src/vim9compile.c, src/ex_docmd.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4010
+Problem: Error messages are spread out.
+Solution: Move more error messages to errors.h.
+Files: src/errors.h, src/crypt.c, src/diff.c, src/ex_docmd.c,
+ src/ex_getln.c, src/fileio.c, src/findfile.c, src/float.c,
+ src/gui.c, src/highlight.c, src/if_mzsch.c, src/if_py_both.h,
+ src/if_python.c, src/if_python3.c, src/insexpand.c, src/match.c,
+ src/memline.c, src/option.c, src/popupwin.c, src/regexp.c,
+ src/regexp_nfa.c, src/spellfile.c, src/strings.c, src/syntax.c,
+ src/textprop.c, src/typval.c, src/undo.c, src/usercmd.c,
+ src/userfunc.c, src/window.c
+
+Patch 8.2.4011
+Problem: Test fails because of changed error number.
+Solution: Restore old duplicate error message.
+Files: src/errors.h, src/match.c
+
+Patch 8.2.4012
+Problem: Error messages are spread out.
+Solution: Move the last error messages to errors.h.
+Files: src/errors.h, src/channel.c, src/clientserver.c, src/diff.c,
+ src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c, src/ex_docmd.c,
+ src/gui_w32.c, src/help.c, src/if_mzsch.c, src/if_py_both.h,
+ src/if_python.c, src/job.c, src/json.c, src/list.c, src/option.c,
+ src/optionstr.c, src/quickfix.c, src/regexp.c, src/regexp_nfa.c,
+ src/register.c, src/scriptfile.c, src/sign.c, src/syntax.c,
+ src/tag.c, src/terminal.c, src/textprop.c, src/typval.c,
+ src/undo.c, src/userfunc.c, src/vim9compile.c, src/viminfo.c
+
+Patch 8.2.4013
+Problem: Build failure without the spell feature.
+Solution: Adjust #ifdefs.
+Files: src/errors.h
+
+Patch 8.2.4014
+Problem: Git and gitcommit file types not properly recognized.
+Solution: Adjust filetype detection. (Tim Pope, closes #9477)
+Files: runtime/filetype.vim, runtime/scripts.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.4015
+Problem: Build failure with tiny features. (Tony Mechelynck)
+Solution: Adjust #ifdefs.
+Files: src/errors.h
+
+Patch 8.2.4016
+Problem: Vim9: incorrect error for argument that is shadowing var.
+Solution: Ignore variable that is not in block where the function was
+ defined.
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4017
+Problem: Gcc warns for misleading indent in Athena menu code.
+Solution: Add curlies around the two statements. (Dominique Pellé,
+ closes #9480)
+Files: src/gui_athena.c
+
+Patch 8.2.4018
+Problem: ml_get error when win_execute redraws with Visual selection.
+Solution: Disable Visual area temporarily. (closes #9479)
+Files: src/evalwindow.c, src/proto/evalwindow.pro, src/structs.h,
+ src/evalbuffer.c, src/proto/evalbuffer.pro, src/evalvars.c,
+ src/if_py_both.h, src/evalfunc.c,
+ src/testdir/test_execute_func.vim
+
+Patch 8.2.4019
+Problem: Vim9: import mechanism is too complicated.
+Solution: Do not use the Javascript mechanism but a much simpler one.
+Files: runtime/doc/vim9.txt, src/vim9script.c, src/proto/vim9script.pro,
+ src/errors.h, src/structs.h, src/eval.c, src/proto/eval.pro,
+ src/evalvars.c, src/proto/evalvars.pro, src/userfunc.c,
+ src/vim9expr.c, src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4020 (after 8.2.4019)
+Problem: Debugger test fails.
+Solution: Fix import statement.
+Files: src/testdir/test_debugger.vim
+
+Patch 8.2.4021 (after 8.2.4019)
+Problem: Missing part of the :import changes.
+Solution: Add changes in vim9cmds.c.
+Files: src/vim9cmds.c
+
+Patch 8.2.4022
+Problem: Two error messages in the wrong file.
+Solution: Use the error message from errors.h.
+Files: src/popupwin.c, src/usercmd.c
+
+Patch 8.2.4023
+Problem: Using uninitialized variable.
+Solution: Initialize "ufunc" also when an item is not exported.
+Files: src/vim9script.c
+
+Patch 8.2.4024
+Problem: Confusing error message if imported name is used directly.
+Solution: Give a better error message.
+Files: src/eval.c, src/proto/eval.pro, src/evalvars.c, src/userfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4025
+Problem: Error for import not ending in .vim does not work for .vimrc.
+Solution: Check that .vim is the end. (closes #9484)
+Files: src/vim9script.c, src/errors.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4026
+Problem: ml_get error with specific win_execute() command. (Sean Dewar)
+Solution: Check cursor and Visual area are OK.
+Files: src/evalwindow.c, src/testdir/test_execute_func.vim
+
+Patch 8.2.4027
+Problem: Import test fails on MS-Windows.
+Solution: Use a different directory name.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.4028
+Problem: ml_get error with :doautoall and Visual area. (Sean Dewar)
+Solution: Disable Visual mode while executing autocommands.
+Files: src/structs.h, src/autocmd.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.4029
+Problem: Debugging NFA regexp my crash, cached indent may be wrong.
+Solution: Fix some debug warnings in the NFA regexp code. Make sure log_fd
+ is set when used. Fix breakindent and indent caching. (Christian
+ Brabandt, closes #9482)
+Files: src/indent.c, src/optionstr.c, src/regexp_nfa.c
+
+Patch 8.2.4030
+Problem: A script local funcref is not found from a mapping.
+Solution: When looking for a function, also find a script-local funcref.
+ (closes #9485)
+Files: src/evalvars.c, src/proto/evalvars.pro, src/userfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4031
+Problem: Crash in xterm with only two lines. (Dominique Pellé)
+Solution: Only perform xterm compatibility test if possible. (closes #9488)
+Files: src/term.c, src/testdir/test_startup.vim
+
+Patch 8.2.4032
+Problem: ATTRIBUTE_NORETURN is not needed.
+Solution: Use NORETURN(). (Ozaki Kiichi, closes #9487)
+Files: src/if_ruby.c, src/vim.h
+
+Patch 8.2.4033
+Problem: Running filetype tests leaves directory behind.
+Solution: Delete the top directory. (closes #9483)
+Files: src/testdir/test_filetype.vim
+
+Patch 8.2.4034
+Problem: Coverity warns for possibly using a NULL pointer.
+Solution: Check v_partial is not NULL.
+Files: src/vim9type.c
+
+Patch 8.2.4035
+Problem: Timer triggered at the debug prompt may cause trouble.
+Solution: Do not trigger any timer at the debug prompt. (closes #9481)
+Files: src/time.c
+
+Patch 8.2.4036
+Problem: Vim9: script test file is getting too long.
+Solution: Split the import/export functionality to a separate file.
+Files: src/testdir/test_vim9_script.vim, src/testdir/test_vim9_import.vim,
+ src/testdir/Make_all.mak
+
+Patch 8.2.4037
+Problem: Insert mode completion is insufficiently tested.
+Solution: Add more tests. Fix uncovered memory leak. (Yegappan Lakshmanan,
+ closes #9489)
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.4038
+Problem: Various code not used when features are disabled.
+Solution: Add #ifdefs. (Dominique Pellé, closes #9491)
+Files: src/alloc.c, src/buffer.c, src/charset.c, src/clipboard.c,
+ src/cmdhist.c, src/crypt.c, src/edit.c, src/eval.c,
+ src/evalbuffer.c, src/evalfunc.c, src/ex_docmd.c, src/globals.h,
+ src/gui_xim.c, src/hashtab.c, src/highlight.c, src/insexpand.c,
+ src/main.c, src/mark.c, src/message.c, src/misc1.c, src/misc2.c,
+ src/ops.c, src/option.c, src/option.h, src/optionstr.c,
+ src/register.c, src/scriptfile.c, src/tag.c, src/term.c,
+ src/typval.c, src/usercmd.c, src/userfunc.c, src/vim9script.c,
+ src/vim9type.c
+
+Patch 8.2.4039
+Problem: The xdiff library is linked in even when not used.
+Solution: Use configure to decide whether xdiff object files are included.
+Files: src/Makefile, src/config.mk.in, src/configure.ac,
+ src/auto/configure, src/feature.h
+
+Patch 8.2.4040
+Problem: Keeping track of allocated lines in user functions is too
+ complicated.
+Solution: Instead of freeing individual lines keep them all until the end.
+Files: src/alloc.c, src/proto/alloc.pro, src/vim9compile.c,
+ src/userfunc.c, src/proto/userfunc.pro, src/message.c,
+ src/usercmd.c, src/viminfo.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4041
+Problem: Using uninitialized pointer.
+Solution: Store "ht" when variable is in another script.
+Files: src/evalvars.c
+
+Patch 8.2.4042
+Problem: Vim9: build error.
+Solution: Use grow array instead of character pointer.
+Files: src/vim9execute.c
+
+Patch 8.2.4043
+Problem: Using int for second argument of ga_init2().
+Solution: Remove unnecessary type cast (int) when using sizeof().
+Files: src/arglist.c, src/channel.c, src/cmdexpand.c, src/dict.c,
+ src/digraph.c, src/eval.c, src/evalfunc.c, src/evalvars.c,
+ src/evalwindow.c, src/ex_docmd.c, src/fileio.c, src/filepath.c,
+ src/findfile.c, src/fold.c, src/hardcopy.c, src/help.c,
+ src/job.c, src/list.c, src/menu.c, src/os_win32.c, src/register.c,
+ src/scriptfile.c, src/spellfile.c, src/spellsuggest.c,
+ src/strings.c, src/syntax.c, src/tag.c, src/terminal.c,
+ src/undo.c, src/usercmd.c, src/userfunc.c, src/vim9execute.c,
+ src/viminfo.c, src/window.c, src/if_py_both.h
+
+Patch 8.2.4044
+Problem: Vim9: no error when importing the same script twice.
+Solution: Give an error, unless it is a reload.
+Files: src/vim9script.c, src/errors.h, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4045
+Problem: Some global functions are only used in one file.
+Solution: Make the functions static. (Yegappan Lakshmanan, closes #9492)
+Files: src/ex_getln.c, src/highlight.c, src/proto/ex_getln.pro,
+ src/proto/highlight.pro, src/proto/vim9compile.pro,
+ src/proto/vim9instr.pro, src/proto/window.pro, src/vim9compile.c,
+ src/vim9instr.c, src/window.c
+
+Patch 8.2.4046
+Problem: Some error messages not in the right place.
+Solution: Adjust the errors file. Fix typo.
+Files: src/errors.h, src/regexp_bt.c, src/typval.c,
+
+Patch 8.2.4047
+Problem: Depending on the build features error messages are unused.
+Solution: Add #ifdefs. (Dominique Pellé, closes #9493)
+Files: src/errors.h
+
+Patch 8.2.4048
+Problem: gcc complains about use of "%p" in printf.
+Solution: Add (void *) typecast. (Dominique Pellé, closes #9494)
+Files: src/if_py_both.h
+
+Patch 8.2.4049
+Problem: Vim9: reading before the start of the line with "$" by itself.
+Solution: Do not subtract one when reporting the error.
+Files: src/vim9expr.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4050
+Problem: Vim9: need to prefix every item in an autoload script.
+Solution: First step in supporting "vim9script autoload" and "import
+ autoload".
+Files: runtime/doc/repeat.txt, runtime/doc/vim9.txt, src/structs.h,
+ src/errors.h, src/vim9script.c, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/userfunc.c, src/eval.c,
+ src/evalvars.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/vim9expr.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4051
+Problem: Compiler complains about possibly uninitialized variable.
+Solution: Add code to avoid a compiler warning. (John Marriott)
+Files: src/scriptfile.c
+
+Patch 8.2.4052
+Problem: Not easy to resize a window from a plugin.
+Solution: Add win_move_separator() and win_move_statusline() functions.
+ (Daniel Steinberg, closes #9486)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/evalwindow.c, src/proto/evalwindow.pro,
+ src/testdir/test_window_cmd.vim
+
+Patch 8.2.4053
+Problem: Vim9: autoload mechanism doesn't fully work yet.
+Solution: Define functions and variables with their autoload name, add the
+ prefix when calling a function, find the variable in the table of
+ script variables.
+Files: src/structs.h, src/scriptfile.c, src/proto/scriptfile.pro,
+ src/vim9script.c, src/proto/vim9script.pro, src/userfunc.c,
+ src/evalvars.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4054 (after 8.2.4053)
+Problem: Vim9 script test fails.
+Solution: Add missing change.
+Files: src/vim9compile.c
+
+Patch 8.2.4055
+Problem: Vim9: line break in expression causes v:errmsg to be filled.
+ (Yegappan Lakshmanan)
+Solution: Do not give an error when skipping over an expression.
+Files: src/userfunc.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4056
+Problem: Vim9: memory leak when exporting function in autoload script.
+Solution: Free the name if replacing it.
+Files: src/scriptfile.c
+
+Patch 8.2.4057
+Problem: Vim9: not fully implementing the autoload mechanism.
+Solution: Allow for exporting a legacy function. Improve test coverage.
+Files: src/vim9script.c, src/testdir/test_vim9_import.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4058
+Problem: Vim9: import test failure in wrong line.
+Solution: Adjust line number.
+Files: src/testdir/test_vim9_import.vim
+
+Patch 8.2.4059
+Problem: Vim9: an expression of a map cannot access script-local items.
+ (Maxim Kim)
+Solution: Use the script ID of where the map was defined.
+Files: src/getchar.c, src/map.c, src/proto/map.pro,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4060
+Problem: win_execute() is slow on systems where getcwd() or chdir() is
+ slow. (Rick Howe)
+Solution: Avoid using getcwd() and chdir() if no local directory is used and
+ 'acd' is not set. (closes #9504)
+Files: src/evalwindow.c
+
+Patch 8.2.4061
+Problem: Codecov bash script is deprecated.
+Solution: Use the codecov action. (Ozaki Kiichi, closes #9505)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4062
+Problem: Match highlighting of tab too short.
+Solution: Do not stop match highlighting if on a Tab. (Christian Brabandt,
+ closes #9507, closes #9500)
+Files: src/drawline.c, src/testdir/test_match.vim,
+ src/testdir/dumps/Test_match_tab_linebreak.dump
+
+Patch 8.2.4063
+Problem: Vim9: exported function in autoload script not found. (Yegappan
+ Lakshmanan)
+Solution: Use the autoload prefix to search for the function.
+Files: src/userfunc.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4064
+Problem: Foam files are not detected.
+Solution: Detect the foam filetype by the path and file contents. (Mohammed
+ Elwardi Fadeli, closes #9501)
+Files: runtime/filetype.vim, runtime/autoload/dist/ft.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.4065
+Problem: Computation overflow with large count for :yank.
+Solution: Avoid an overflow.
+Files: src/ex_docmd.c, src/testdir/test_excmd.vim
+
+Patch 8.2.4066
+Problem: Vim9: imported autoload script loaded again.
+Solution: Do not create a new imported_T every time.
+Files: src/vim9script.c, src/vim9compile.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4067
+Problem: Vim9: cannot call imported function with :call. (Drew Vogel)
+Solution: Translate the function name. (closes #9510)
+Files: src/userfunc.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4068 (after 8.2.4066)
+Problem: Vim9: import test fails.
+Solution: Add missing change.
+Files: src/scriptfile.c
+
+Patch 8.2.4069
+Problem: Vim9: import test fails on MS-Windows.
+Solution: Ignore case. Adjust test to avoid name that only differs in case.
+Files: src/eval.c, src/scriptfile.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4070
+Problem: Using uninitialized memory when reading empty file.
+Solution: Check for empty file before checking for NL. (Dominique Pellé,
+ closes #9511)
+Files: src/filepath.c, src/testdir/test_eval_stuff.vim
+
+Patch 8.2.4071
+Problem: Vim9: no detection of return in try/endtry. (Dominique Pellé)
+Solution: Check if any of the blocks inside try/endtry did not end in
+ return.
+Files: src/vim9.h, src/vim9compile.c, src/vim9cmds.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4072
+Problem: Vim9: compiling function fails when autoload script is not loaded
+ yet.
+Solution: Depend on runtime loading.
+Files: src/vim9expr.c, src/vim9script.c, src/vim9instr.c,
+ src/vim9execute.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4073
+Problem: Coverity warns for using NULL pointer.
+Solution: Bail out when running out of memory. Check for running over end of
+ a string.
+Files: src/userfunc.c,
+
+Patch 8.2.4074
+Problem: Going over the end of NameBuff.
+Solution: Check length when appending a space.
+Files: src/drawscreen.c, src/testdir/test_edit.vim
+
+Patch 8.2.4075 (after 8.2.4073)
+Problem: Test failures.
+Solution: Change check for NULL pointer.
+Files: src/userfunc.c
+
+Patch 8.2.4076
+Problem: Memory leak in autoload import.
+Solution: Do not overwrite the autoload prefix.
+Files: src/vim9script.c
+
+Patch 8.2.4077
+Problem: Not all Libsensors files are recognized.
+Solution: Add "sensors.d/*" pattern. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4078
+Problem: Terminal test for current directory not used on FreeBSD.
+Solution: Make it work on FreeBSD. (Ozaki Kiichi, closes #9516) Add
+ TermWait() inside Run_shell_in_terminal() as a generic solution.
+Files: src/testdir/test_terminal3.vim, src/testdir/term_util.vim,
+ src/testdir/test_terminal.vim, src/testdir/test_terminal2.vim,
+ src/testdir/test_mapping.vim
+
+Patch 8.2.4079
+Problem: MS-Windows: "gvim --version" didn't work when build with VIMDLL.
+Solution: Adjust #ifdef. (Ken Takata, closes #9517)
+Files: src/main.c
+
+Patch 8.2.4080
+Problem: Not sufficient test coverage for xxd.
+Solution: Add a few more test cases. (Erki Auerswald, closes #9515)
+Files: src/testdir/test_xxd.vim
+
+Patch 8.2.4081
+Problem: CodeQL reports problem in if_cscope causing it to fail.
+Solution: Use execvp() instead of execl(). Merge the header file into the
+ source file. (Ozaki Kiichi, closes #9519)
+Files: Filelist, src/Make_cyg_ming.mak, src/Make_mvc.mak,
+ src/Make_vms.mms, src/Makefile, src/if_cscope.c, src/if_cscope.h,
+ src/testdir/test_cscope.vim
+
+Patch 8.2.4082
+Problem: Check for autoload file name and prefix fails. (Christian J.
+ Robinson)
+Solution: Only lower case the prefix on systems where the file name is not
+ case sensitive.
+Files: src/scriptfile.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4083
+Problem: Vim9: no test for "vim9script autoload" and using script variable
+ in the same script.
+Solution: Add a simple test. Fix uncovered problem.
+Files: src/evalvars.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4084
+Problem: Memory leak when looking for autoload prefixed variable.
+Solution: Free the concatenated string.
+Files: src/evalvars.c
+
+Patch 8.2.4085
+Problem: Vim9: no test for using import in legacy script.
+Solution: Add a test.
+Files: src/testdir/test_vim9_import.vim
+
+Patch 8.2.4086
+Problem: "cctx" argument of find_func_even_dead() is unused.
+Solution: Remove the argument.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/vim9compile.c,
+ src/vim9instr.c, src/evalfunc.c, src/evalvars.c, src/testing.c,
+ src/vim9execute.c, src/vim9expr.c, src/vim9script.c,
+ src/vim9type.c
+
+Patch 8.2.4087
+Problem: Cannot test items from an autoload script easily.
+Solution: Add the "autoload" value for test_override().
+Files: runtime/doc/testing.txt, src/testing.c, src/globals.h,
+ src/vim9script.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4088
+Problem: Xxd cannot output everything in one line.
+Solution: Make zero columns mean infinite columns. (Erik Auerswald,
+ closes #9524)
+Files: runtime/doc/xxd.1, runtime/doc/xxd.man, src/testdir/test_xxd.vim,
+ src/xxd/xxd.c
+
+Patch 8.2.4089 (after 8.2.4078)
+Problem: Terminal test for current directory fails on FreeBSD.
+Solution: Skip the test.
+Files: src/testdir/test_terminal3.vim
+
+Patch 8.2.4090
+Problem: After restoring a session buffer order can be quite different.
+Solution: Create buffers first. (Evgeni Chasnovski, closes #9520)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.4091
+Problem: Virtcol is recomputed for statusline unnecessarily.
+Solution: Just use "w_virtcol". (closes #9523)
+Files: src/buffer.c, src/testdir/test_statusline.vim
+
+Patch 8.2.4092
+Problem: macOS CI: unnecessarily doing "Install packages".
+Solution: Only do "Install packages" for huge build. (Ozaki Kiichi,
+ closes #9521)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4093
+Problem: Cached breakindent values not initialized properly.
+Solution: Initialize and cache formatlistpat. (Christian Brabandt,
+ closes #9526, closes #9512)
+Files: runtime/doc/options.txt, src/indent.c, src/option.c,
+ src/proto/option.pro, src/testdir/test_breakindent.vim
+
+Patch 8.2.4094
+Problem: 'virtualedit' is window-local but using buffer-local enum.
+Solution: Use window-local enum. (closes #9529)
+Files: src/option.h, src/optiondefs.h
+
+Patch 8.2.4095
+Problem: Sed script not recognized by the first line.
+Solution: Recognize a sed script starting with "#n". (Doug Kearns)
+Files: runtime/scripts.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4096
+Problem: Linux CI: unnecessarily installing packages
+Solution: Only install packages for huge build. (Ozaki Kiichi,
+ closes #9530)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4097
+Problem: Wrong number in error message on 32 bit system. (John Paul Adrian
+ Glaubitz)
+Solution: Add type cast. (closes #9527)
+Files: src/vim9compile.c
+
+Patch 8.2.4098
+Problem: Typing "interrupt" at debug prompt may keep exception around,
+ causing function calls to fail.
+Solution: Discard any exception at the toplevel. (closes #9532)
+Files: src/main.c
+
+Patch 8.2.4099
+Problem: Vim9: cannot use Vim9 syntax in mapping.
+Solution: Add <ScriptCmd> to use the script context for a command.
+Files: runtime/doc/map.txt, src/normal.c, src/getchar.c,
+ src/proto/getchar.pro, src/ex_getln.c, src/edit.c, src/terminal.c,
+ src/keymap.h, src/insexpand.c, src/misc2.c, src/ops.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4100
+Problem: Early return when getting the 'formatlistpat' value.
+Solution: Remove the first line. (Christian Brabandt)
+Files: src/option.c, src/testdir/test_breakindent.vim
+
+Patch 8.2.4101
+Problem: Warning for unused argument in tiny version.
+Solution: Add "UNUSED".
+Files: src/getchar.c
+
+Patch 8.2.4102
+Problem: Vim9: import cannot be used after method.
+Solution: Recognize an imported function name. (closes #9496)
+Files: src/eval.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4103
+Problem: Vim9: variable declared in for loop not initialized.
+Solution: Always initialize the variable. (closes #9535)
+Files: src/vim9instr.c, src/proto/vim9instr.pro, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4104
+Problem: Vim9: lower casing the autoload prefix causes problems.
+Solution: Always store the prefix with case preserved.
+Files: src/scriptfile.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4105
+Problem: Translation related comment in the wrong place.
+Solution: Move it back with the text. (Ken Takata, closes #9537)
+Files: src/errors.h, src/ex_docmd.c
+
+Patch 8.2.4106
+Problem: Going over the end of the w_lines array.
+Solution: Break out of the loop when "idx" is too big. (issue #9540)
+Files: src/drawscreen.c
+
+Patch 8.2.4107
+Problem: Script context not restored after using <ScriptCmd>.
+Solution: Also restore context when not in a script. (closes #9536)
+ Add the 'c' flag to feedkeys() to be able to test this.
+Files: runtime/doc/builtin.txt, src/getchar.c, src/evalfunc.c,
+ src/testdir/test_mapping.vim
+
+Patch 8.2.4108
+Problem: Going over the end of the w_lines array.
+Solution: Check not going over the end and limit to Rows. (issue #9540)
+Files: src/drawscreen.c
+
+Patch 8.2.4109
+Problem: MS-Windows: high dpi support is outdated.
+Solution: Improve High DPI support by using PerMonitorV2. (Ken Takata
+ closes #9525, closes #3102)
+Files: src/gui.c, src/gui.h, src/gui_w32.c, src/vim.manifest
+
+Patch 8.2.4110
+Problem: Coverity warns for using NULL pointer.
+Solution: Check "evalarg" is not NULL. Skip errors when "verbose" is false.
+Files: src/eval.c
+
+Patch 8.2.4111
+Problem: Potential problem when map is deleted while executing.
+Solution: Reset last used map pointer when deleting a mapping.
+Files: src/map.c
+
+Patch 8.2.4112
+Problem: Function not deleted at end of test.
+Solution: Delete the function.
+Files: src/testdir/test_diffmode.vim
+
+Patch 8.2.4113
+Problem: Typo on DOCMD_RANGEOK results in not recognizing command.
+Solution: Correct the typo. (closes #9539)
+Files: src/vim.h, src/testdir/test_mapping.vim
+
+Patch 8.2.4114
+Problem: Vim9: type checking for a funcref does not work for when it is
+ used in a method.
+Solution: Pass the base to where the type is checked.
+Files: src/vim9type.c, src/proto/vim9type.pro, src/userfunc.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4115
+Problem: Cannot use a method with a complex expression.
+Solution: Evaluate the expression after "->" and use the result.
+Files: src/eval.c, src/errors.h, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4116
+Problem: Vim9: cannot use a method with a complex expression in a :def
+ function.
+Solution: Implement compiling the expression.
+Files: src/vim9expr.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4117
+Problem: Vim9: wrong white space error after using imported item.
+Solution: Don't skip over white space. (closes #9544)
+Files: src/eval.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4118
+Problem: Using UNUSED for argument that is used.
+Solution: Remove UNUSED.
+Files: src/usercmd.c
+
+Patch 8.2.4119
+Problem: Build failure when disabling the channel feature.
+Solution: Adjust #ifdef. (Dominique Pellé, closes #9545)
+Files: src/misc2.c
+
+Patch 8.2.4120
+Problem: Block insert goes over the end of the line.
+Solution: Handle invalid byte better. Fix inserting the wrong text.
+Files: src/ops.c, src/testdir/test_visual.vim
+
+Patch 8.2.4121
+Problem: Visual test fails on MS-Windows.
+Solution: Set 'isprint' so that the character used is not printable.
+Files: src/testdir/test_visual.vim
+
+Patch 8.2.4122
+Problem: ":command Cmd" does not show custom completion argument.
+Solution: Show the completion argument when using ":verbose".
+Files: src/usercmd.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.4123
+Problem: Complete function cannot be import.Name.
+Solution: Dereference the function name if needed. Also: do not see
+ "import.Name" as a builtin function. (closes #9541)
+Files: src/userfunc.c, src/eval.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4124
+Problem: Vim9: method in compiled function may not see script item.
+Solution: Make sure not to skip to the next line. (closes #9496)
+Files: src/vim9expr.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4125
+Problem: Completion tests fail.
+Solution: Disable error messages while dereferencing the function name.
+Files: src/eval.c
+
+Patch 8.2.4126
+Problem: Crash on exit when built with dynamic Tcl and EXITFREE is defined.
+ (Dominique Pellé)
+Solution: Only call Tcl_Finalize() when initialized. (closes #9546)
+Files: src/if_tcl.c
+
+Patch 8.2.4127
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdef.
+Files: src/usercmd.c
+
+Patch 8.2.4128
+Problem: Crash when method cannot be found. (Christian J. Robinson)
+Solution: Don't mix up pointer names.
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4129
+Problem: Building with +sound but without +eval fails. (Dominique Pellé)
+Solution: Disable canberra in tiny and small build. (closes #9548)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.4130
+Problem: MS-Windows: MSVC build may have libraries duplicated.
+Solution: Improve the MSVC Makefile. (Ken Takata, closes #9547)
+Files: src/Make_mvc.mak
+
+Patch 8.2.4131
+Problem: Vim9: calling function in autoload import does not work in a :def
+ function.
+Solution: When a variable is not found and a PCALL follows use a funcref.
+ (closes #9550)
+Files: src/vim9execute.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4132
+Problem: Vim9: wrong error message when autoload script can't be found.
+Solution: Correct check for using autoload with wrong name.
+Files: src/vim9script.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4133
+Problem: output of ":scriptnames" goes into the message history, while this
+ does not happen for other commands, such as ":ls".
+Solution: Use msg_outtrans() instead of smsg(). (closes #9551)
+Files: src/scriptfile.c, src/testdir/test_scriptnames.vim
+
+Patch 8.2.4134
+Problem: MS-Windows: test for import with absolute path fails.
+Solution: Handle path starting with slash as an absolute path.
+Files: src/vim9script.c
+
+Patch 8.2.4135
+Problem: Vim9: ":scriptnames" shows unloaded imported autoload script.
+Solution: Mark the unloaded script with "A". (closes #9552)
+Files: runtime/doc/repeat.txt, src/scriptfile.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4136
+Problem: Vim9: the "autoload" argument of ":vim9script" is not useful.
+Solution: Remove the argument. (closes #9555)
+Files: runtime/doc/vim9.txt, runtime/doc/repeat.txt, src/vim9script.c,
+ src/errors.h, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4137
+Problem: Vim9: calling import with and without method is inconsistent.
+Solution: Set a flag that a parenthesis follows to compile_load_scriptvar().
+ Add some more tests. Improve error message.
+Files: src/vim9expr.c, src/vim9execute.c, src/vim9script.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4138
+Problem: Vim9: no error for return with argument when the function does not
+ return anything.
+Solution: Give an error for the invalid argument. (issue #9497)
+Files: src/vim9cmds.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4139
+Problem: Using freed memory if an expression abbreviation deletes the
+ abbreviation.
+Solution: Do not access the pointer after evaluating the expression.
+Files: src/map.c, src/testdir/test_mapping.vim
+
+Patch 8.2.4140
+Problem: maparg() does not indicate the type of script where it was defined.
+Solution: Add "scriptversion".
+Files: runtime/doc/builtin.txt, src/map.c, src/testdir/test_maparg.vim
+
+Patch 8.2.4141 (after 8.2.4140)
+Problem: Vim9 builtin functions test fails.
+Solution: Add "scriptversion" item to maparg() result.
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4142
+Problem: Build failure with normal features without persistent undo.
+Solution: Adjust #ifdef. (closes #9557)
+Files: src/fileio.c
+
+Patch 8.2.4143
+Problem: MS-Windows: IME support for Win9x is obsolete.
+Solution: Remove the Win9x code. (Ken Takata, closes #9559)
+Files: src/gui_w32.c
+
+Patch 8.2.4144
+Problem: Cannot load libsodium dynamically.
+Solution: Support dynamic loading on MS-Windows. (Ken Takata, closes #9554)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/buffer.c,
+ src/crypt.c, src/memline.c, src/proto/crypt.pro
+
+Patch 8.2.4145
+Problem: Confusing error when using name of import for a function.
+Solution: Pass a flag to trans_function_name().
+Files: src/vim.h, src/userfunc.c, src/proto/userfunc.pro, src/eval.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4146
+Problem: Vim9: shadowed function can be used in compiled function but not
+ at script level.
+Solution: Also give an error in a compiled function. (closes #9563)
+Files: src/vim9expr.c
+
+Patch 8.2.4147
+Problem: E464 does not always include the offending command.
+Solution: Add another error message with "%s". (closes #9564)
+Files: src/errors.h, src/vim9compile.c, src/ex_docmd.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4148
+Problem: Deleting any mapping may cause <ScriptCmd> to not set the script
+ context.
+Solution: Only reset last_used_map if it is the deleted mapping.
+ (closes #9568)
+Files: src/map.c, src/getchar.c, src/proto/getchar.pro,
+ src/testdir/test_mapping.vim
+
+Patch 8.2.4149
+Problem: Test override not restored, autocommand left behind.
+Solution: Correct restoring test override. Delete autocommand afterwards.
+Files: src/testdir/test_autocmd.vim, src/testdir/test_mapping.vim
+
+Patch 8.2.4150
+Problem: Coverity warns for using pointer after free.
+Solution: Swap statements, even though using the pointer is no problem.
+Files: src/map.c
+
+Patch 8.2.4151
+Problem: Reading beyond the end of a line.
+Solution: For block insert only use the offset for correcting the length.
+Files: src/ops.c, src/testdir/test_visual.vim
+
+Patch 8.2.4152
+Problem: Block insert with double wide character fails.
+Solution: Adjust the expected output.
+Files: src/testdir/test_utf8.vim
+
+Patch 8.2.4153
+Problem: MS-Windows: Global IME is no longer supported.
+Solution: Remove the Global IME implementation. (Ken Takata, closes #9562)
+Files: Filelist, runtime/doc/mbyte.txt, src/Make_mvc.mak, src/dimm.idl,
+ src/glbl_ime.cpp, src/glbl_ime.h, src/gui_w32.c, src/vim.h
+
+Patch 8.2.4154
+Problem: ml_get error when exchanging windows in Visual mode.
+Solution: Correct end of Visual area when entering another buffer.
+Files: src/window.c, src/testdir/test_visual.vim
+
+Patch 8.2.4155
+Problem: Translating strftime() argument results in check error.
+Solution: Add gettext comment.
+Files: src/time.c
+
+Patch 8.2.4156
+Problem: Fileinfo message overwrites echo'ed message.
+Solution: Reset need_fileinfo when displaying a message. (Rob Pilling,
+ closes #9569)
+Files: src/message.c, src/testdir/test_messages.vim,
+ src/testdir/dumps/Test_fileinfo_after_echo.dump
+
+Patch 8.2.4157
+Problem: Terminal test fails because Windows sets the title.
+Solution: Add the "vterm_title" testing override and use it in the test.
+ (Ozaki Kiichi, closes #9556)
+Files: runtime/doc/testing.txt, src/globals.h, src/terminal.c,
+ src/testing.c, src/testdir/test_terminal.vim
+
+Patch 8.2.4158
+Problem: MS-Windows: memory leak in :browse.
+Solution: Free stuff before returning. (Ken Takata, closes #9574)
+Files: src/gui_w32.c
+
+Patch 8.2.4159
+Problem: MS-Windows: _WndProc() is very long.
+Solution: Move code to separate functions. (Ken Takata, closes #9573)
+Files: src/gui_w32.c
+
+Patch 8.2.4160
+Problem: Cannot change the register used for Select mode delete.
+Solution: Make CTRL-R set the register to be used when deleting text for
+ Select mode. (Shougo Matsushita, closes #9531)
+Files: runtime/doc/visual.txt, src/globals.h, src/normal.c, src/ops.c,
+ src/testdir/test_selectmode.vim
+
+Patch 8.2.4161
+Problem: Vim9: warning for missing white space after imported variable.
+Solution: Do not skip white space. (closes #9567)
+Files: src/vim9expr.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4162
+Problem: Vim9: no error for redefining function with export.
+Solution: Check for existing function with/without prefix. (closes #9577)
+Files: src/userfunc.c, src/scriptfile.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4163
+Problem: No error for omitting function name after autoload prefix.
+Solution: Check for missing function name. (issue #9577)
+Files: src/userfunc.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4164 (after 8.2.4162)
+Problem: Error in legacy code for function shadowing variable.
+Solution: Only give the error in Vim9 script.
+Files: src/userfunc.c
+
+Patch 8.2.4165
+Problem: The nv_g_cmd() function is too long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #9576)
+Files: src/normal.c
+
+Patch 8.2.4166
+Problem: Undo synced when switching buffer in another window.
+Solution: Do not sync undo when not needed. (closes #9575)
+Files: src/buffer.c, src/testdir/test_timers.vim
+
+Patch 8.2.4167
+Problem: Vim9: error message for old style import.
+Solution: Use another error message. Add a test.
+Files: src/evalvars.c, src/errors.h, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4168 (after 8.2.4163)
+Problem: Disallowing empty function name breaks existing plugins.
+Solution: Allow empty function name in legacy script.
+Files: src/userfunc.c, src/testdir/test_autoload.vim,
+ src/testdir/sautest/autoload/foo.vim
+
+Patch 8.2.4169
+Problem: MS-Windows: unnecessary casts and other minor things.
+Solution: Clean up the MS-Windows code. (Ken Takata, closes #9583)
+Files: src/gui_w32.c
+
+Patch 8.2.4170
+Problem: MS-Windows: still using old message API calls.
+Solution: Call the "W" functions directly. (Ken Takata, closes #9582)
+Files: src/gui_w32.c, src/os_mswin.c, src/os_win32.c, src/os_win32.h
+
+Patch 8.2.4171
+Problem: Cannot invoke option function using autoload import.
+Solution: Expand the import to an autoload function name. (closes #9578)
+Files: src/userfunc.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/option.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4172
+Problem: Filetype detection for BASIC is not optimal.
+Solution: Improve BASIC filetype detection. (Doug Kearns)
+Files: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.4173
+Problem: Cannot use an import in 'foldexpr'.
+Solution: Set the script context to where 'foldexpr' was set. (closes #9584)
+ Fix that the script context was not set for all buffers.
+Files: src/eval.c, src/proto/eval.pro, src/fold.c, src/structs.h,
+ src/option.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4174
+Problem: Vim9: can use an autoload name in normal script.
+Solution: Disallow using an autoload name.
+Files: src/userfunc.c, src/errors.h, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4175
+Problem: MS-Windows: runtime check for multi-line balloon is obsolete.
+Solution: Remove the obsolete code. (Ken Takata, closes #9592)
+Files: src/evalfunc.c, src/gui_w32.c, src/proto/gui_w32.pro
+
+Patch 8.2.4176
+Problem: Vim9: cannot use imported function with call().
+Solution: Translate the function name. (closes #9590)
+Files: src/evalfunc.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4177
+Problem: Vim9: autoload script not loaded after "vim9script noclear".
+Solution: Check IMP_FLAGS_AUTOLOAD properly. (closes #9593)
+Files: src/vim9compile.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4178
+Problem: Vim9: invalid error for return type of lambda when debugging.
+Solution: Do not check the return type of a lambda. (closes #9589)
+Files: src/vim9cmds.c
+
+Patch 8.2.4179
+Problem: 'foldtext' is evaluated in the current script context.
+Solution: Use the script context where the option was set.
+Files: src/fold.c, src/buffer.c, src/eval.c, src/proto/eval.pro,
+ src/findfile.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4180
+Problem: 'balloonexpr' is evaluated in the current script context.
+Solution: Use the script context where the option was set.
+Files: src/beval.c, src/option.c, src/proto/option.pro,
+ src/testdir/test_balloon.vim,
+ src/testdir/dumps/Test_balloon_eval_term_01.dump,
+ src/testdir/dumps/Test_balloon_eval_term_01a.dump,
+ src/testdir/dumps/Test_balloon_eval_term_02.dump
+
+Patch 8.2.4181
+Problem: Vim9: cannot use an import in 'diffexpr'.
+Solution: Set the script context when evaluating 'diffexpr'. Do not require
+ 'diffexpr' to return a bool, it was ignored anyway.
+Files: src/evalvars.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4182 (after 8.2.4182)
+Problem: Memory leak when evaluating 'diffexpr'.
+Solution: Use free_tv() instead of clear_tv().
+Files: src/evalvars.c
+
+Patch 8.2.4183
+Problem: Cannot use an import in 'formatexpr'.
+Solution: Set the script context when evaluating 'formatexpr'.
+Files: src/textformat.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4184
+Problem: Cannot use an import in 'includeexpr'.
+Solution: Set the script context when evaluating 'includeexpr'
+Files: src/findfile.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4185
+Problem: Cannot use an import in 'indentexpr'.
+Solution: Set the script context when evaluating 'indentexpr'
+Files: src/indent.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4186
+Problem: Cannot use an import in 'patchexpr'.
+Solution: Set the script context when evaluating 'patchexpr'. Do not
+ require 'patchexpr' to return a bool, it was ignored anyway.
+Files: src/evalvars.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4187
+Problem: Gnuplot file not recognized.
+Solution: Recognize ".gnuplot". (closes #9588)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4188
+Problem: Not all gitconfig files are recognized.
+Solution: Add a few more patterns. (Tim Pope, closes #9597)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4189
+Problem: MS-Windows: code for "old look" is obsolete.
+Solution: Delete obsolete code. Use "MS Shell Dlg" font. (Ken Takata,
+ closes #9596)
+Files: src/gui_w32.c
+
+Patch 8.2.4190
+Problem: All conceal tests are skipped without the screendumps feature.
+Solution: Only skip the tests that use screendumps. (closes #9599)
+Files: src/testdir/test_conceal.vim
+
+Patch 8.2.4191
+Problem: json5 files are not recognized.
+Solution: Add a pattern for json5 files. (closes #9601)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4192
+Problem: Cannot use an import in 'printexpr'.
+Solution: Set the script context when evaluating 'printexpr'.
+Files: src/evalvars.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4193
+Problem: Cannot use an import in 'charconvert'.
+Solution: Set the script context when evaluating 'charconvert'. Also expand
+ script-local functions in 'charconvert'.
+Files: src/evalvars.c, src/optionstr.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4194
+Problem: MS-Windows: code for calculating font size is duplicated.
+Solution: Move the code to a function. (Ken Takata, closes #9603)
+Files: src/gui_w32.c
+
+Patch 8.2.4195
+Problem: Resizing terminal may cause to behave like CTRL-Z.
+Solution: Set "got_tstp" only when in_mch_suspend is set. (Dorian Bivolaru,
+ closes #9602, closes #9586)
+Files: src/os_unix.c
+
+Patch 8.2.4196
+Problem: Various file types not recognized.
+Solution: Add patterns to recognize more file types (closes #9607)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4197
+Problem: Cannot use an import in the "expr" part of 'spellsuggest'.
+Solution: Set the script context when evaluating "expr" of 'spellsuggest'.
+Files: src/evalvars.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4198
+Problem: Vim9: the switch for executing instructions is too long.
+Solution: Move some code to separate functions.
+Files: src/vim9execute.c
+
+Patch 8.2.4199
+Problem: MS-Windows: Support for MSVC before 2003 is not useful.
+Solution: Remove the exceptions for MSVC 6.0. (Ken Takata, closes #9616)
+Files: src/GvimExt/gvimext.h, src/ex_docmd.c, src/feature.h,
+ src/gui_w32.c, src/if_cscope.c, src/if_ole.cpp, src/if_ruby.c,
+ src/macros.h, src/os_mswin.c, src/os_win32.c, src/os_win32.h,
+ src/proto/os_win32.pro, src/time.c, src/vim.h
+
+Patch 8.2.4200
+Problem: Some tests do not clean up properly.
+Solution: Delete created files. (Yegappan Lakshmanan, closes #9611)
+Files: src/testdir/test_filetype.vim, src/testdir/test_messages.vim,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4201
+Problem: When using the GUI CTRL-Z does not stop gvim.
+Solution: When using the GUI set SIGTSTP to SIG_DFL. (Andrew Maltsev,
+ closes #9570)
+Files: src/os_unix.c
+
+Patch 8.2.4202
+Problem: Vim9: cannot export function that exists globally.
+Solution: When checking if a function already exists only check for
+ script-local functions. (closes #9615)
+Files: src/userfunc.c, src/proto/userfunc.pro, src/vim.h,
+ src/vim9compile.c, src/vim9instr.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4203
+Problem: Entering a character with CTRL-V may include modifiers.
+Solution: Reset "mod_mask" when entering a character with digits after
+ CTRL-V. (closes #9610)
+Files: src/edit.c, src/testdir/test_edit.vim
+
+Patch 8.2.4204
+Problem: screenpos() has non-zero row for invisible text.
+Solution: Only add the window row when the text is visible. (closes #9618)
+Files: src/move.c, src/testdir/test_cursor_func.vim
+
+Patch 8.2.4205
+Problem: The normal_cmd() function is too long.
+Solution: Move parts to separate functions. (Yegappan Lakshmanan,
+ closes #9608)
+Files: src/normal.c
+
+Patch 8.2.4206
+Problem: Condition with many "(" causes a crash.
+Solution: Limit recursion to 1000.
+Files: src/errors.h, src/eval.c, src/testdir/test_eval_stuff.vim
+
+Patch 8.2.4207 (after 8.2.4206)
+Problem: Recursion test fails with MSVC.
+Solution: Use a smaller limit for MSVC.
+Files: src/eval.c
+
+Patch 8.2.4208
+Problem: Using setbufvar() may change the window title.
+Solution: Do not redraw when creating the autocommand window. (closes #9613)
+Files: src/autocmd.c, src/testdir/test_functions.vim
+
+Patch 8.2.4209
+Problem: partial in 'opfunc' cannot use an imported function.
+Solution: Also expand the function name in a partial. (closes #9614)
+Files: src/evalvars.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4210 (after 8.2.4208)
+Problem: Window title test fails in some configurations.
+Solution: Only run the test if the title can be obtained.
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.4211 (after 8.2.4208)
+Problem: Window title test still fails in some configurations.
+Solution: Use WaitForAssert().
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.4212 (after 8.2.4208)
+Problem: Window title test still fails in some configurations.
+Solution: Explicitly set the 'title' option.
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.4213
+Problem: Too much code for supporting old MSVC versions.
+Solution: Remove MSVC 2003 support. (Ken Takata, closes #9623)
+Files: Filelist, src/INSTALLpc.txt, src/Make_mvc.mak, src/gui_w32.c,
+ src/msvcsetup.bat, src/os_win32.c
+
+Patch 8.2.4214
+Problem: Illegal memory access with large 'tabstop' in Ex mode.
+Solution: Allocate enough memory.
+Files: src/ex_getln.c, src/testdir/test_ex_mode.vim
+
+Patch 8.2.4215
+Problem: Illegal memory access when copying lines in Visual mode.
+Solution: Adjust the Visual position after copying lines.
+Files: src/ex_cmds.c, src/testdir/test_visual.vim
+
+Patch 8.2.4216
+Problem: Vim9: cannot use a function from an autoload import directly.
+Solution: Add the AUTOLOAD instruction to figure out at runtime.
+ (closes #9620)
+Files: src/vim9expr.c, src/vim9.h, src/vim9execute.c, src/vim9instr.c,
+ src/proto/vim9instr.pro, src/testdir/test_vim9_import.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4217
+Problem: Illegal memory access when undo makes Visual area invalid.
+Solution: Correct the Visual area after undo.
+Files: src/undo.c, src/testdir/test_visual.vim
+
+Patch 8.2.4218
+Problem: Illegal memory access with bracketed paste in Ex mode.
+Solution: Reserve space for the trailing NUL.
+Files: src/edit.c, src/testdir/test_paste.vim
+
+Patch 8.2.4219
+Problem: Reading before the start of the line.
+Solution: Check boundary before trying to read the character.
+Files: src/register.c, src/testdir/test_visual.vim
+
+Patch 8.2.4220
+Problem: MS-Windows: some old compiler support remains.
+Solution: Remove obsolete compiler support. (Ken Takata, closes #9627)
+Files: src/Make_mvc.mak, src/vim.h
+
+Patch 8.2.4221
+Problem: Some functions in normal.c are very long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #9628)
+Files: src/normal.c
+
+Patch 8.2.4222
+Problem: MS-Windows: clumsy way to suppress progress on CI.
+Solution: Check for "$CI" in the Makefile itself. (Ken Takata, closes #9631)
+Files: .github/workflows/ci.yml, ci/appveyor.bat, src/Make_mvc.mak
+
+Patch 8.2.4223
+Problem: Long/int compiler warnings; function arguments swapped.
+Solution: Add type casts. Swap arguments. (Ken Takata, closes #9632)
+Files: src/alloc.c, src/eval.c, src/vim9script.c
+
+Patch 8.2.4224
+Problem: Vim9: no error when using a number for map() second argument
+Solution: Disallow number to string conversion. (closes #9630)
+Files: src/eval.c, src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4225
+Problem: Vim9: depth argument of :lockvar not parsed in :def function.
+Solution: Parse the optional depth argument. (closes #9629)
+ Fix that locking doesn't work for a non-materialize list.
+Files: src/vim9cmds.c, src/evalvars.c, src/structs.h, src/evalfunc.c,
+ src/errors.h, src/vim9execute.c, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4226 (after 8.2.4224)
+Problem: Filter-map test fails.
+Solution: Only reject number argument in Vim9 script.
+Files: src/eval.c
+
+Patch 8.2.4227
+Problem: Vim9: using "lockvar!" in :def function does not work.
+Solution: Add "!" instead of "-1". (closes #9634)
+Files: src/vim9cmds.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4228
+Problem: No tests for clicking in the GUI tabline.
+Solution: Add test functions to generate the events. Add tests using the
+ functions. (Yegappan Lakshmanan, closes #9638)
+Files: runtime/doc/builtin.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/normal.c,
+ src/proto/testing.pro, src/testdir/test_diffmode.vim,
+ src/testdir/test_gui.vim, src/testdir/test_normal.vim,
+ src/testing.c
+
+Patch 8.2.4229
+Problem: Possible crash when invoking timer callback fails.
+Solution: Initialize the typval. Give an error for an empty callback.
+ (closes #9636)
+Files: src/time.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4230
+Problem: MS-Windows: set_guifontwide() is included but won't work.
+Solution: Include set_guifontwide() only for X11. (Ken Takata, closes #9640)
+Files: src/gui.c
+
+Patch 8.2.4231
+Problem: Vim9: map() gives type error when type was not declared.
+Solution: Only check the type when it was declared, like extend() does.
+ (closes #9635)
+Files: src/list.c, src/evalfunc.c, src/vim9instr.c,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4232 (after 8.2.4231)
+Problem: Some compilers don't like a goto label without statement.
+Solution: Return instead of using a goto.
+Files: src/list.c
+
+Patch 8.2.4233
+Problem: Crash when recording and using Select mode.
+Solution: When deleting the last recorded character check there is something
+ to delete.
+Files: src/getchar.c, src/testdir/test_registers.vim
+
+Patch 8.2.4234
+Problem: test_garbagecollect_now() does not check v:testing as documented.
+Solution: Give an error if v:testing is not set.
+Files: src/testing.c, src/errors.h, src/testdir/test_functions.vim
+
+Patch 8.2.4235
+Problem: Invalid check for NULL pointer.
+Solution: Remove the check.
+Files: src/getchar.c
+
+Patch 8.2.4236
+Problem: Accessing freed memory.
+Solution: Set the bh_curr pointer to NULL.
+Files: src/getchar.c
+
+Patch 8.2.4237
+Problem: Record buffer wrong if character in Select mode was not typed.
+Solution: Only delete the tail from the record buffer if the character was
+ typed. (closes #9650)
+Files: src/normal.c, src/testdir/test_registers.vim
+
+Patch 8.2.4238
+Problem: *.tf file could be filetype "tf" or "terraform".
+Solution: Detect the type from the file contents. (closes #9642)
+Files: runtime/filetype.vim, runtime/autoload/dist/ft.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.4239
+Problem: Build fails with unusual configuration.
+Solution: Adjust #ifdef. (closes #9651)
+Files: src/testing.c
+
+Patch 8.2.4240
+Problem: Error for using flatten() in Vim9 script is unclear.
+Solution: Add a remark to use flattennew().
+Files: src/errors.h
+
+Patch 8.2.4241
+Problem: Some type casts are redundant.
+Solution: Remove the type casts. (closes #9643)
+Files: src/blob.c, src/buffer.c, src/channel.c, src/clientserver.c,
+ src/clipboard.c, src/drawline.c, src/drawscreen.c, src/edit.c,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_eval.c,
+ src/fold.c, src/if_cscope.c, src/json.c, src/match.c,
+ src/memline.c, src/message.c, src/misc1.c, src/normal.c,
+ src/ops.c, src/option.c, src/optionstr.c, src/os_unix.c,
+ src/register.c, src/sign.c, src/spellfile.c, src/tag.c, src/ui.c,
+ src/undo.c, src/window.c
+
+Patch 8.2.4242
+Problem: Put in Visual mode cannot be repeated.
+Solution: Use "P" to put without yanking the deleted text into the unnamed
+ register. (Shougo Matsushita, closes #9591)
+Files: runtime/doc/visual.txt, src/normal.c, src/register.c,
+ src/testdir/test_visual.vim
+
+Patch 8.2.4243
+Problem: Lua tests fail with Lua 5.4.4.
+Solution: Check messages like before Lua 5.4.3. (Jakub Kulík, closes #9652)
+Files: src/testdir/test_lua.vim
+
+Patch 8.2.4244
+Problem: MS-Windows: warning from MSVC on debug build.
+Solution: Adjust "/opt" options. Remove unused variables. Make variables
+ uppercase for consistency. (Ken Takata, closes #9647)
+Files: src/Make_mvc.mak
+
+Patch 8.2.4245
+Problem: ":retab 0" may cause illegal memory access.
+Solution: Limit the value of 'tabstop' to 10000.
+Files: src/option.c, src/vim.h, src/indent.c,
+ src/testdir/test_options.vim
+
+Patch 8.2.4246
+Problem: One error message not in errors.h. (Antonio Colombo)
+Solution: Move the message and rename.
+Files: src/errors.h, src/if_perl.xs
+
+Patch 8.2.4247
+Problem: Stack corruption when looking for spell suggestions.
+Solution: Prevent the depth increased too much. Add a five second time
+ limit to finding suggestions.
+Files: src/spellsuggest.c, src/testdir/test_spell.vim
+
+Patch 8.2.4248
+Problem: No proper test for moving the window separator.
+Solution: Add a test. Add comment in code. (closes #9656)
+Files: src/window.c, src/testdir/test_window_cmd.vim
+
+Patch 8.2.4249
+Problem: The timeout limit for spell suggestions is always 5000 milli
+ seconds.
+Solution: Add the "timeout" entry to 'spellsuggest'.
+Files: runtime/doc/options.txt, src/spellsuggest.c,
+ src/testdir/test_spell.vim
+
+Patch 8.2.4250
+Problem: Channel out callback test is flaky on Mac.
+Solution: Assign high priority to the test process. (Ozaki Kiichi,
+ closes #9653)
+Files: src/testdir/test_channel_pipe.py, src/testdir/thread_util.py
+
+Patch 8.2.4251
+Problem: Vala files are not recognized.
+Solution: Add the *.vala pattern. (closes #9654)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4252
+Problem: Generating the normal command table at runtime is inefficient.
+Solution: Generate the table with a Vim script and put it in a header file.
+ (Yegappan Lakshmanan, closes #9648)
+Files: Filelist, runtime/doc/builtin.txt, runtime/doc/usr_41.txt,
+ src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms,
+ src/Makefile, src/create_nvcmdidxs.vim, src/evalfunc.c,
+ src/main.c, src/normal.c, src/nv_cmdidxs.h, src/proto/normal.pro
+
+Patch 8.2.4253
+Problem: Using freed memory when substitute uses a recursive function call.
+Solution: Make a copy of the substitute text.
+Files: src/ex_cmds.c, src/testdir/test_substitute.vim
+
+Patch 8.2.4254
+Problem: Using short instead of int.
+Solution: Use int. (closes #9658)
+Files: src/if_cscope.c
+
+Patch 8.2.4255
+Problem: Theoretical computation overflow.
+Solution: Perform multiplication in a wider type. (closes #9657)
+Files: src/alloc.c, src/drawline.c, src/eval.c, src/evalfunc.c,
+ src/ex_docmd.c, src/hardcopy.c, src/list.c, src/memfile.c,
+ src/memline.c, src/popupwin.c
+
+Patch 8.2.4256
+Problem: MS-Windows: compiler warnings when compiled with /W4.
+Solution: Small adjustments to the code. (Ken Takata, closes #9659)
+Files: src/gui_w32.c, src/os_win32.c
+
+Patch 8.2.4257
+Problem: Vim9: finding global function without g: prefix but not finding
+ global variable is inconsistent.
+Solution: Require using g: for a global function. Change the vim9.vim
+ script into a Vim9 script with exports. Fix that import in legacy
+ script does not work.
+Files: src/vim9expr.c, src/evalfunc.c, src/eval.c, src/userfunc.c,
+ src/testdir/vim9.vim, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_import.vim,
+ src/testdir/test_vim9_script.vim, src/testdir/test_blob.vim,
+ src/testdir/test_execute_func.vim, src/testdir/test_debugger.vim,
+ src/testdir/test_expr.vim, src/testdir/test_filter_map.vim,
+ src/testdir/test_float_func.vim, src/testdir/test_functions.vim,
+ src/testdir/test_glob2regpat.vim, src/testdir/test_highlight.vim,
+ src/testdir/test_iminsert.vim, src/testdir/test_ins_complete.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_mapping.vim,
+ src/testdir/test_normal.vim, src/testdir/test_popupwin.vim,
+ src/testdir/test_profile.vim, src/testdir/test_quickfix.vim,
+ src/testdir/test_tagfunc.vim, src/testdir/test_textprop.vim,
+ src/testdir/test_usercommands.vim
+
+Patch 8.2.4258
+Problem: Coverity warns for array overrun.
+Solution: Restrict depth to MAXWLEN - 1.
+Files: src/spellsuggest.c
+
+Patch 8.2.4259
+Problem: Number of test functions for GUI events is growing.
+Solution: Use one function with a dictionary. (Yegappan Lakshmanan,
+ closes #9660)
+Files: runtime/doc/builtin.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/testing.pro,
+ src/testdir/test_gui.vim, src/testdir/test_vim9_builtin.vim,
+ src/testing.c
+
+Patch 8.2.4260
+Problem: Vim9: can still use a global function without g: at the script
+ level.
+Solution: Also check for g: at the script level. (issue #9637)
+Files: src/userfunc.c, src/proto/userfunc.pro, src/evalvars.c,
+ src/vim9expr.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_import.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_scroll_11.dump,
+ src/testdir/dumps/Test_popupwin_scroll_12.dump
+
+Patch 8.2.4261
+Problem: Accessing invalid memory when a regular expression checks the
+ Visual area while matching in a string.
+Solution: Do not try matching the Visual area in a string.
+Files: src/regexp.c, src/testdir/test_help.vim
+
+Patch 8.2.4262 (after 8.2.4261)
+Problem: Some search tests fail.
+Solution: Use a better way to reject searching for the Visual area.
+Files: src/regexp.c
+
+Patch 8.2.4263
+Problem: No test for the GUI find/replace dialog.
+Solution: Add a test function and a test. (Yegappan Lakshmanan,
+ closes #9662)
+Files: runtime/doc/testing.txt, src/testdir/test_gui.vim, src/testing.c
+
+Patch 8.2.4264
+Problem: Vim9: can use old style autoload function name.
+Solution: Give an error for old style autoload function name.
+Files: src/errors.h, src/userfunc.c, src/testdir/test_vim9_import.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4265 (after 8.2.4264)
+Problem: Autoload tests fails.
+Solution: Use export instead of name with #.
+Files: src/testdir/sautest/autoload/auto9.vim,
+ src/testdir/test_autoload.vim, src/testdir/test_ins_complete.vim
+
+Patch 8.2.4266
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize saved_did_emsg.
+Files: src/userfunc.c
+
+Patch 8.2.4267
+Problem: Unused entry in keymap enum.
+Solution: Remove the entry.
+Files: src/keymap.h
+
+Patch 8.2.4268
+Problem: CI log output is long.
+Solution: Group output in sections. (Ozaki Kiichi, closes #9670)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4269
+Problem: Coverity warns for using a NULL pointer.
+Solution: Check for "name" to not be NULL.
+Files: src/userfunc.c
+
+Patch 8.2.4270
+Problem: Generating nv_cmdidxs.h requires building Vim twice.
+Solution: Move the table into a separate file and use a separate executable
+ to extract the command characters. (Ozaki Kiichi, closes #9669)
+Files: src/normal.c, src/nv_cmds.h, Filelist, runtime/doc/builtin.txt,
+ runtime/doc/usr_41.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
+ src/Make_vms.mms, src/Makefile, src/create_nvcmdidxs.c,
+ src/create_nvcmdidxs.vim, src/evalfunc.c, src/proto/normal.pro
+
+Patch 8.2.4271
+Problem: MS-Windows: cannot build with Ruby 3.1.0.
+Solution: Adjust the DLL name and include directory. (Ken Takata,
+ closes #9666)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak
+
+Patch 8.2.4272
+Problem: Vim9 expr test fails without the channel feature. (Dominique
+ Pellé)
+Solution: Remove "g:" before "CheckFeature". (closes #9671)
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4273
+Problem: The EBCDIC support is outdated.
+Solution: Remove the EBCDIC support.
+Files: src/ascii.h, src/charset.c, src/cindent.c, src/digraph.c,
+ src/edit.c, src/eval.c, src/evalfunc.c, src/ex_cmds.c,
+ src/feature.h, src/filepath.c, src/findfile.c, src/getchar.c,
+ src/gui.c, src/gui_motif.c, src/hardcopy.c, src/help.c,
+ src/macros.h, src/map.c, src/mark.c, src/misc2.c, src/normal.c,
+ src/ops.c, src/option.c, src/option.h, src/optiondefs.h,
+ src/os_unix.c, src/proto/evalfunc.pro, src/regexp.c,
+ src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/screen.c,
+ src/spell.c, src/strings.c, src/structs.h, src/term.c,
+ src/version.c, src/viminfo.c, src/testdir/test_edit.vim,
+ src/testdir/test_exec_while_if.vim, src/testdir/test_expr.vim,
+ src/testdir/test_gf.vim, src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.4274
+Problem: Basic and form filetype detection is incomplete.
+Solution: Add a separate function for .frm files. (Doug Kearns, closes #9675)
+Files: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.4275
+Problem: Cannot use an autoload function from a package under start.
+Solution: Also look in the "start" package directory. (Bjorn Linse,
+ closes #7193)
+Files: src/scriptfile.c, src/testdir/test_packadd.vim
+
+Patch 8.2.4276
+Problem: Separate test function for the GUI scrollbar.
+Solution: Use test_gui_event(). (Yegappan Lakshmanan, closes #9674)
+Files: runtime/doc/builtin.txt, runtime/doc/testing.txt,
+ runtime/doc/usr_41.txt, src/evalfunc.c, src/testing.c,
+ src/proto/testing.pro, src/testdir/test_gui.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4277
+Problem: Vim9: an import does not shadow a command modifier.
+Solution: Do not accept a command modifier followed by a dot.
+Files: src/ex_docmd.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4278
+Problem: Build with Athena GUI fails. (Elimar Riesebieter)
+Solution: Add #ifdef.
+Files: src/testing.c
+
+Patch 8.2.4279
+Problem: Vim9: cannot change item type with map() after range().
+Solution: Split the return type in current type and declared type.
+ (closes #9665)
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9instr.c,
+ src/vim9type.c, src/proto/vim9type.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4280 (after 8.2.4279)
+Problem: list-dict test crashes.
+Solution: Check declared type for add().
+Files: src/vim9expr.vim
+
+Patch 8.2.4281
+Problem: Using freed memory with :lopen and :bwipe.
+Solution: Do not use a wiped out buffer.
+Files: src/buffer.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.4282
+Problem: Restricted mode requires the -Z command line option.
+Solution: Use restricted mode when $SHELL ends in "nologin" or "false".
+ (closes #9681)
+Files: runtime/doc/starting.txt, src/option.c,
+ src/testdir/test_restricted.vim
+
+Patch 8.2.4283
+Problem: Using a variable for the return value is not needed.
+Solution: Return the value directly. (closes #9687)
+Files: src/ex_docmd.c, src/misc2.c
+
+Patch 8.2.4284
+Problem: Old mac resources files are no longer used.
+Solution: Delete the unused files. (Ozaki Kiichi, closes #9688)
+Files: Filelist, src/Makefile, src/dehqx.py, src/infplist.xml,
+ src/os_mac.rsr.hqx, src/os_mac_rsrc/app.icns,
+ src/os_mac_rsrc/doc-txt.icns, src/os_mac_rsrc/doc.icns
+
+Patch 8.2.4285
+Problem: Vim9: type of item in for loop not checked properly.
+Solution: Adjust the type checking. (closes #9683)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9cmds.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4286
+Problem: Vim9: strict type checking after copy() and deepcopy().
+Solution: Allow type to change after making a copy. (closes #9644)
+Files: src/eval.c, src/proto/eval.pro, src/dict.c, src/proto/dict.pro,
+ src/list.c, src/proto/list.pro, src/evalfunc.c, src/vim9execute.c,
+ src/vim9type.c, src/proto/vim9type.pro, src/evalvars.c,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4287
+Problem: Cannot assign empty list with any list type to variable with
+ specific list type.
+Solution: Use unknown list type for empty list if the specified type is any.
+Files: src/vim9type.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.4288
+Problem: Preprocessor indents are inconsistent.
+Solution: Fix preprocessor indents. (Ken Takata, closes #9691)
+Files: src/arglist.c, src/change.c, src/ex_cmds.c, src/gui.c,
+ src/hashtab.c, src/indent.c, src/ops.c, src/os_win32.c
+
+Patch 8.2.4289
+Problem: Warnings reported by MSVC.
+Solution: Rename variables and other fixes. (Ken Takata, closes #9689)
+Files: src/cmdexpand.c, src/drawscreen.c, src/filepath.c, src/getchar.c,
+ src/menu.c, src/os_win32.c, src/version.c
+
+Patch 8.2.4290
+Problem: MS-Windows: using type casts for timer IDs.
+Solution: Remove type casts and use the right type. (Ken Takata,
+ closes #9690) Remove old debug comments. Rename variables and
+ functions.
+Files: src/gui_w32.c
+
+Patch 8.2.4291
+Problem: Error number used twice.
+Solution: Renumber the errors.
+Files: src/errors.h
+
+Patch 8.2.4292 (after 8.2.4291)
+Problem: Test fails.
+Solution: Adjust the expected error number.
+Files: src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4293
+Problem: Vim9: when copying a list it gets type list<any> even when the
+ original list did not have a type.
+Solution: Only set the type when the original list has a type. (closes #9692)
+Files: src/list.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4294
+Problem: MS-Windows: #ifdefs for Cygwin are too complicated.
+Solution: Simplify the conditions. (Ken Takata, closes #9693)
+Files: src/evalfunc.c, src/main.c, src/os_unix.c, src/os_win32.c,
+ src/os_win32.h
+
+Patch 8.2.4295
+Problem: Vim9: concatenating two lists may result in wrong type.
+Solution: Remove the type instead of using list<any>. (closes #9692)
+Files: src/list.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4296
+Problem: Vim9: not all code covered by tests.
+Solution: Add a few more tests for corner cases. Fix hang when single quote
+ is missing.
+Files: src/vim9expr.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4297
+Problem: Vim9: not all code covered by tests.
+Solution: Add a couple more tests.
+Files: src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4298
+Problem: Divide by zero with huge tabstop value.
+Solution: Reject tabstop value that overflows to zero.
+Files: src/indent.c, src/testdir/test_vartabs.vim
+
+Patch 8.2.4299
+Problem: SafeState autocommand interferes with debugging.
+Solution: Do not trigger SafeState while debugging. (closes #9697)
+Files: src/main.c
+
+Patch 8.2.4300 (after 8.2.4299)
+Problem: Cannot build tiny version. (Tony Mechelynck)
+Solution: Add #ifdef.
+Files: src/main.c
+
+Patch 8.2.4301
+Problem: Vim9: type error for copy of dict.
+Solution: Do not use dict<any> but no type. (closes #9696)
+Files: src/dict.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4302
+Problem: Vim9: return type of getline() is too strict.
+Solution: Make the declared type list<any>. Also do this for other
+ functions returning a list of a specific type.
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4303
+Problem: A few messages should not be translated.
+Solution: Remove _(). (Dominique Pellé, closes #9702)
+Files: src/syntax.c
+
+Patch 8.2.4304
+Problem: Vim9: slice() makes a copy but doesn't change the type.
+Solution: Change the declared type like copy(). (closes #9696)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4305
+Problem: Tex filetype detection fails.
+Solution: Check value to be positive. (closes #9704)
+Files: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4306
+Problem: No test for fixed perl filetype check.
+Solution: Add a test. Sort test functions.
+Files: src/testdir/test_filetype.vim
+
+Patch 8.2.4307
+Problem: A few more messages should not be translated.
+Solution: Remove _().
+Files: src/syntax.c
+
+Patch 8.2.4308
+Problem: Vim9: cannot list autoload function.
+Solution: Don't give an error for using # when listing a function.
+ (closes #9703)
+Files: src/userfunc.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4309
+Problem: Vim9: crash when using a partial in the wrong context.
+Solution: Don't use an NULL outer pointer. (closes #9706)
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4310
+Problem: Vim9: constant list and dict get a declaration type other than
+ "any".
+Solution: A constant list and dict have a declared member type "any".
+ (closes #9701)
+Files: src/vim9instr.c, src/vim9type.c, src/proto/vim9type.pro,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4311
+Problem: Vim9: changing script variable type not caught at compile time.
+Solution: Set the declared type.
+Files: src/vim9instr.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4312
+Problem: No error for using :vim9script in a :def function.
+Solution: Give an error when compiling.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4313
+Problem: Vim9: cannot change type of list after making a slice.
+Solution: Adjust the declared member type. (closes #9696)
+Files: src/vim9expr.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4314 (after 8.2.4312)
+Problem: Test fails where lines are skipped.
+Solution: Only give an error when not skipping commands.
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4315
+Problem: Put in Visual mode not fully tested.
+Solution: Add a few more test cases. (closes #9708)
+Files: src/testdir/test_visual.vim
+
+Patch 8.2.4316
+Problem: __CYGWIN32__ is not defined on 64 bit systems.
+Solution: Update #ifdefs. (Ken Takata, closes #9709)
+Files: src/main.c, src/os_unix.c, src/pty.c, src/vim.h
+
+Patch 8.2.4317
+Problem: MS-Windows: Vim exits when Python 3 initialisation fails.
+Solution: Hook into the exit() function to recover from the failure.
+ (Ken Takata, closes #9710)
+Files: runtime/doc/if_pyth.txt, src/if_python3.c, src/os_win32.c,
+ src/errors.h, src/proto/os_win32.pro
+
+Patch 8.2.4318
+Problem: Various comment and indent mistakes, returning wrong zero.
+Solution: Fix the mistakes. Return NULL instead of FAIL.
+Files: src/clientserver.c, src/eval.c, src/evalvars.c, src/vim9cmds.c,
+ src/window.c
+
+Patch 8.2.4319
+Problem: :put does not work properly in compiled function. (John Beckett)
+Solution: Adjust the direction when using line zero.
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4320
+Problem: Athena and Motif: when maximized scrollbar position is wrong.
+Solution: Implement the scrollbar padding functions. (closes #9712)
+Files: src/gui_athena.c, src/gui_motif.c
+
+Patch 8.2.4321
+Problem: Vim9: crash when using a funcref to a closure.
+Solution: Copy pt_outer to the new partial. (closes #9714)
+Files: src/evalfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4322
+Problem: Vim9: crash when using funcref with closure.
+Solution: Keep a reference to the funcref that has the outer context.
+ (closes #9716)
+Files: src/evalfunc.c, src/structs.h, src/eval.c, src/vim9execute.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.4323
+Problem: Vim9: nested function name can start with "_".
+Solution: Use same rule for function name for nested functions.
+ (closes #9713)
+Files: src/vim9compile.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4324
+Problem: Vim9: script-local function name can start with "_".
+Solution: Check for leading capital after "s:". Correct error message.
+Files: src/userfunc.c, src/errors.h, src/vim9compile.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.4325
+Problem: 'wildmenu' only shows few matches.
+Solution: Add the "pum" option: use a popup menu to show the matches.
+ (Yegappan Lakshmanan et al., closes #9707)
+Files: runtime/doc/options.txt, src/vim.h, src/cmdexpand.c,
+ src/drawscreen.c, src/evalfunc.c, src/ex_getln.c, src/option.h,
+ src/optionstr.c, src/popupmenu.c, src/proto/cmdexpand.pro,
+ src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_pum_01.dump,
+ src/testdir/dumps/Test_wildmenu_pum_02.dump,
+ src/testdir/dumps/Test_wildmenu_pum_03.dump,
+ src/testdir/dumps/Test_wildmenu_pum_04.dump,
+ src/testdir/dumps/Test_wildmenu_pum_05.dump,
+ src/testdir/dumps/Test_wildmenu_pum_06.dump,
+ src/testdir/dumps/Test_wildmenu_pum_07.dump,
+ src/testdir/dumps/Test_wildmenu_pum_08.dump,
+ src/testdir/dumps/Test_wildmenu_pum_09.dump,
+ src/testdir/dumps/Test_wildmenu_pum_10.dump,
+ src/testdir/dumps/Test_wildmenu_pum_11.dump,
+ src/testdir/dumps/Test_wildmenu_pum_12.dump,
+ src/testdir/dumps/Test_wildmenu_pum_13.dump,
+ src/testdir/dumps/Test_wildmenu_pum_14.dump,
+ src/testdir/dumps/Test_wildmenu_pum_15.dump,
+ src/testdir/dumps/Test_wildmenu_pum_16.dump,
+ src/testdir/dumps/Test_wildmenu_pum_17.dump,
+ src/testdir/dumps/Test_wildmenu_pum_18.dump,
+ src/testdir/dumps/Test_wildmenu_pum_19.dump,
+ src/testdir/dumps/Test_wildmenu_pum_20.dump,
+ src/testdir/dumps/Test_wildmenu_pum_21.dump,
+ src/testdir/dumps/Test_wildmenu_pum_22.dump,
+ src/testdir/dumps/Test_wildmenu_pum_23.dump,
+ src/testdir/dumps/Test_wildmenu_pum_24.dump,
+ src/testdir/dumps/Test_wildmenu_pum_25.dump,
+ src/testdir/dumps/Test_wildmenu_pum_26.dump,
+ src/testdir/dumps/Test_wildmenu_pum_27.dump,
+ src/testdir/dumps/Test_wildmenu_pum_28.dump,
+ src/testdir/dumps/Test_wildmenu_pum_29.dump
+
+Patch 8.2.4326
+Problem: "o" and "O" copying comment not sufficiently tested.
+Solution: Add a test case. (closes #9718)
+Files: src/testdir/test_textformat.vim
+
+Patch 8.2.4327
+Problem: May end up with no current buffer.
+Solution: When deleting the current buffer to not pick a quickfix buffer as
+ the new current buffer.
+Files: src/buffer.c, src/testdir/test_quickfix.vim
+
+Patch 8.2.4328
+Problem: Command line complete matches cleared when typing character.
+ (Dominique Pellé)
+Solution: Only remove a popup menu if there is one.
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_pum_30.dump,
+ src/testdir/dumps/Test_wildmenu_pum_31.dump
+
+Patch 8.2.4329
+Problem: No support for end line number and column in 'errorformat'.
+Solution: Add %e and %k. (closes #9624)
+Files: runtime/doc/quickfix.txt, src/quickfix.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.4330
+Problem: Vim9: no error if script imports itself.
+Solution: Give an error when a script imports itself.
+Files: src/vim9script.c, src/errors.h, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4331
+Problem: Vim9: no test for existing script variable in block.
+Solution: Add a test.
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.4332
+Problem: Vim9: incomplete test for existing script variable in block.
+Solution: Add a couple more tests. Fix uncovered problem.
+Files: src/userfunc.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/vim9script.c, src/vim9expr.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4333
+Problem: cstack not always passed to where it is needed.
+Solution: Pass cstack through functions.
+Files: src/eval.c, src/vim9expr.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/vim9compile.c,
+ src/proto/vim9compile.pro
+
+Patch 8.2.4334
+Problem: Command line popup menu not positioned correctly.
+Solution: Also use vim_strsize() on the existing text. (Naruhiko Nishino,
+ closes #9727)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_pum_32.dump
+
+Patch 8.2.4335
+Problem: No autocommand event triggered before changing directory. (Ronnie
+ Magatti)
+Solution: Add DirChangedPre. (closes #9721)
+Files: runtime/doc/autocmd.txt, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/vim.h, src/autocmd.c, src/misc2.c,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.4336
+Problem: Using :filter for :scriptnames does not work. (Ben Jackson)
+Solution: Call message_filtered(). (closes #9720)
+Files: src/scriptfile.c, src/testdir/test_filter_cmd.vim
+
+Patch 8.2.4337
+Problem: Part of condition is always true.
+Solution: Remove that part of the condition. (closes #9729)
+Files: src/filepath.c
+
+Patch 8.2.4338
+Problem: An error from an expression mapping messes up the display.
+Solution: When the expression results in an empty string return K_IGNORE.
+ In cmdline mode redraw the command line. (closes #9726)
+Files: src/getchar.c, src/testdir/test_mapping.vim,
+ src/testdir/dumps/Test_map_expr_2.dump,
+ src/testdir/dumps/Test_map_expr_3.dump,
+ src/testdir/dumps/Test_map_expr_4.dump
+
+Patch 8.2.4339
+Problem: CTRL-A does not work properly with the cmdline popup menu.
+Solution: Fix issues with CTRL-A. Add more tests for the cmdline popup
+ menu. Remove TermWait() before VeriryScreenDump(). Refactor the
+ cmdline popup code. (Yegappan Lakshmanan, closes #9735)
+Files: src/cmdexpand.c, src/ex_getln.c, src/popupmenu.c,
+ src/testdir/screendump.vim, src/testdir/test_bufline.vim,
+ src/testdir/test_cmdline.vim, src/testdir/test_conceal.vim,
+ src/testdir/test_cursorline.vim, src/testdir/test_diffmode.vim,
+ src/testdir/test_display.vim, src/testdir/test_highlight.vim,
+ src/testdir/test_match.vim, src/testdir/test_popup.vim,
+ src/testdir/test_search_stat.vim, src/testdir/test_terminal.vim,
+ src/testdir/test_textprop.vim,
+ src/testdir/dumps/Test_wildmenu_pum_33.dump,
+ src/testdir/dumps/Test_wildmenu_pum_34.dump,
+ src/testdir/dumps/Test_wildmenu_pum_35.dump,
+ src/testdir/dumps/Test_wildmenu_pum_36.dump,
+ src/testdir/dumps/Test_wildmenu_pum_37.dump
+
+Patch 8.2.4340
+Problem: Amiga: mch_can_exe() is not implemented.
+Solution: Implement mch_can_exe() for Amiga OS 4. (Ola Söder, closes #9731)
+Files: src/os_amiga.c
+
+Patch 8.2.4341
+Problem: Command line not redrawn when finishing popup menu and the screen
+ has scrolled up.
+Solution: Redraw the command line after updating the screen. (closes #9722)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_pum_38.dump
+
+Patch 8.2.4342
+Problem: CI will soon switch to other windows version.
+Solution: Use "windows-2019" instead of "windows-latest". (Ozaki Kiichi,
+ closes #9740)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4343
+Problem: When reloading not all properties are detected.
+Solution: Add the "edit" value to v:fcs_choice. (Rob Pilling, closes #9579)
+Files: runtime/doc/editing.txt, runtime/doc/eval.txt, src/fileio.c,
+ src/proto/fileio.pro, src/message.c, src/spellfile.c,
+ src/testdir/test_filechanged.vim
+
+Patch 8.2.4344
+Problem: Amiga: header file included twice.
+Solution: Remove #include. (Ola Söder, closes #9733)
+Files: src/memfile.c
+
+Patch 8.2.4345
+Problem: <amatch> is expanded like a file name for DirChangedPre.
+Solution: Do not expand <amatch>. (closes #9742) Also for the User event.
+Files: src/autocmd.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.4346
+Problem: A custom statusline may cause Esc to work like Enter on the
+ command line when the popup menu is displayed.
+Solution: Save and restore KeyTyped. (closes #9749)
+Files: src/drawscreen.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_pum_39.dump
+
+Patch 8.2.4347
+Problem: In some build setups UNUSED is not defined.
+Solution: Change the logic of how UNUSED is defined. (Ola Söder,
+ closes #9734)
+Files: src/vim.h
+
+Patch 8.2.4348
+Problem: "legacy exe cmd" does not do what one would expect.
+Solution: Apply the "legacy" and "vim9script" command modifiers to the
+ argument of ":execute".
+Files: runtime/doc/vim9.txt, src/globals.h, src/eval.c, src/ex_docmd.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4349
+Problem: FileChangedShell test fails on MS-Windows.
+Solution: Skip the test on MS-Windows.
+Files: src/testdir/test_filechanged.vim
+
+Patch 8.2.4350
+Problem: FEAT_GUI_ENABLED defined but never used.
+Solution: Remove the #define. (Ola Söder, closes #9732)
+Files: src/vim.h
+
+Patch 8.2.4351
+Problem: No coverage is measured on MS-Windows CI.
+Solution: Enable coverage on MS-Windows. (Ozaki Kiichi, closes #9750)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4352
+Problem: ReScript files are not recognized.
+Solution: Add the *.res and *.resi patterns. (Ananda Umamil, closes #9752)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4353
+Problem: CI does not use the latest Lua and Python.
+Solution: Use Lua 5.4.2 and Python 3.10. (closes #9744)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4354
+Problem: Dynamic loading of libsodium not handled properly.
+Solution: Fix has() and :version. Show an error message when loading fails.
+ Fix memory leaks. (Ken Takata, closes #9754)
+Files: src/crypt.c, src/evalfunc.c, src/gui_dwrite.cpp, src/if_cscope.c,
+ src/os_win32.c, src/proto/crypt.pro, src/proto/os_win32.pro,
+ src/version.c
+
+Patch 8.2.4355
+Problem: Unnecessary call to check_colorcolumn().
+Solution: Remove the call. (Sean Dewar, closes #9748)
+Files: src/option.c, src/window.c
+
+Patch 8.2.4356
+Problem: Command line completion functions are very long.
+Solution: Refactor into multiple functions. (Yegappan Lakshmanan,
+ closes #9753)
+Files: src/cmdexpand.c
+
+Patch 8.2.4357 (after 8.2.4348)
+Problem: sticky command modifiers are too sticky.
+Solution: Do not apply command modifiers to a sourced script. (closes #9751)
+Files: src/scriptfile.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4358
+Problem: Vim9: line number of exception is not set.
+Solution: Set the line number before throwing an exception. (closes #9755)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4359
+Problem: crash when repeatedly using :retab.
+Solution: Bail out when the line is getting too long.
+Files: src/indent.c, src/testdir/test_retab.vim
+
+Patch 8.2.4360
+Problem: Vim9: allowing use of "s:" leads to inconsistencies.
+Solution: Disallow using "s:" in Vim9 script at the script level.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/errors.h,
+ src/vim9compile.c, src/eval.c, src/testdir/vim9.vim,
+ src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_import.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4361 (after 8.2.4360)
+Problem: Vim9: some tests fail.
+Solution: Fix the tests, mostly by removing "s:".
+Files: src/testdir/test_expr.vim, src/testdir/test_functions.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_normal.vim,
+ src/testdir/test_tagfunc.vim
+
+Patch 8.2.4362
+Problem: :retab may allocate too much memory.
+Solution: Bail out when allocating more than MAXCOL bytes.
+Files: src/indent.c
+
+Patch 8.2.4363
+Problem: MS-Windows: running out of memory for a very long line.
+Solution: Use a 32 bit value for MAXCOL also when ints are 64 bits.
+Files: src/vim.h
+
+Patch 8.2.4364
+Problem: MS-Windows: still running out of memory for a very long line.
+Solution: Check for negative length.
+Files: src/indent.c
+
+Patch 8.2.4365 (after 8.2.4348)
+Problem: sticky command modifiers are too sticky.
+Solution: Do not apply command modifiers to a called function. (closes #9751)
+Files: src/userfunc.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4366
+Problem: Not enough tests for command line completion.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #9760)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim,
+ src/testdir/test_usercommands.vim
+
+Patch 8.2.4367
+Problem: Calling in_vim9script() multiple times.
+Solution: Call it once and keep the result.
+Files: src/userfunc.c, src/eval.c
+
+Patch 8.2.4368
+Problem: Amiga: a few compiler warnings.
+Solution: Adjust #ifdefs. Add "UNUSED". (Ola Söder, closes #9756,
+ closes #9757)
+Files: src/term.c, src/os_amiga.c
+
+Patch 8.2.4369
+Problem: Redundant #ifdef argument.
+Solution: Remove unused MSWIN. (Ola Söder, closes #9758)
+Files: src/feature.h
+
+Patch 8.2.4370
+Problem: MS-Windows: libsodium.dll not included with the installer.
+Solution: Add the file to the installer if it exists. (Christian Brabandt,
+ closes #9762)
+Files: nsis/gvim.nsi
+
+Patch 8.2.4371
+Problem: Vim9: can create a script variable from a legacy function.
+Solution: Disallow creating a script variable from a function.
+Files: src/evalvars.c, src/errors.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4372
+Problem: Filetype detection from file contents is in legacy script.
+Solution: Use a compiled function for filetype detection.
+Files: runtime/scripts.vim, runtime/autoload/dist/script.vim
+
+Patch 8.2.4373
+Problem: Expression test fails.
+Solution: Make the test work with latest Vim9 syntax.
+Files: src/testdir/test_expr.vim
+
+Patch 8.2.4374
+Problem: Unreachable code.
+Solution: Remove outdated code lines.
+Files: src/vim9compile.c
+
+Patch 8.2.4375
+Problem: ctx_imports is not used.
+Solution: Delete ctx_imports. Add missing dependency.
+Files: src/vim9.h, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/eval.c, src/evalfunc.c, src/evalvars.c, src/userfunc.c,
+ src/vim9expr.c, src/vim9script.c, src/Makefile
+
+Patch 8.2.4376
+Problem: Not enough tests for command line completion.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #9771)
+Files: src/testdir/test_cmdline.vim, src/testdir/test_usercommands.vim
+
+Patch 8.2.4377
+Problem: CI steps for Windows are a bit unorganized.
+Solution: Organize CI test steps on Windows. (Ozaki Kiichi, closes #9764)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4378
+Problem: Incsearch highlight broken when calling searchcount() in 'tabLine'
+ function. (Mirko Palmer)
+Solution: Save and restore the incsearch state. (Christian Brabandt,
+ closes #9763, closes #9633)
+Files: src/search.c, src/testdir/test_search_stat.vim,
+ src/testdir/dumps/Test_searchstat_inc_1.dump,
+ src/testdir/dumps/Test_searchstat_inc_2.dump,
+ src/testdir/dumps/Test_searchstat_inc_3.dump
+
+Patch 8.2.4379
+Problem: An empty change is reported to a listener.
+Solution: Do not report an empty change. (closes #9768) Remove unused
+ return value.
+Files: src/undo.c, src/change.c, src/testdir/test_listener.vim
+
+Patch 8.2.4380
+Problem: Small differences between Chinese translation files.
+Solution: Add rule for converting UTF-8 to gb2312. (closes #9773)
+Files: src/po/Makefile, src/po/Make_all.mak
+
+Patch 8.2.4381 (after 8.2.4380)
+Problem: Translation file listed twice.
+Solution: Remove one entry.
+Files: src/po/Make_all.mak
+
+Patch 8.2.4382 (after 8.2.4346)
+Problem: A custom 'tabline' may cause Esc to work like Enter on the
+ command line when the popup menu is displayed.
+Solution: Save and restore KeyTyped. (closes #9776)
+Files: src/drawscreen.c, src/screen.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_pum_40.dump
+
+Patch 8.2.4383
+Problem: Vim9: unused code lines.
+Solution: Rely on either "cctx" or "cstack" to not be NULL.
+Files: src/vim9compile.c
+
+Patch 8.2.4384
+Problem: Vim9: error message not tested, some code not tested.
+Solution: Add a couple of test cases. Give an error for a command modifier
+ without a command.
+Files: src/errors.h, src/vim9compile.c, src/ex_docmd.c,
+ src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4385 (after 8.2.4384)
+Problem: Cannot build tiny version.
+Solution: Adjust #ifdefs.
+Files: src/errors.h
+
+Patch 8.2.4386 (after 8.2.4384)
+Problem: Still cannot build tiny version.
+Solution: Adjust #ifdefs.
+Files: src/ex_docmd.c
+
+Patch 8.2.4387
+Problem: Command line completion doesn't always work properly.
+Solution: Adjust triggering after a "|". Add more tests. (Yegappan
+ Lakshmanan, closes #9779)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4388
+Problem: Dead code in op_insert().
+Solution: Remove condition and else block. (closes #9782)
+Files: src/ops.c
+
+Patch 8.2.4389
+Problem: screenpos() does not handle a position in a closed fold.
+Solution: Check if the position is inside a closed fold. (closes #9778)
+Files: src/move.c, src/testdir/test_cursor_func.vim
+
+Patch 8.2.4390
+Problem: Vim9: list from declaration with inferred type does not set the
+ type on the value.
+Solution: When inferring the type in a variable declaration also set the
+ type of the list or dictionary. (closes #9705) Do not set the
+ type when the member is "any".
+Files: src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4391
+Problem: Command line executed when typing Esc in the GUI.
+Solution: Move saving/restoring KeyTyped to build_stl_str_hl().
+ (closes #9783)
+Files: src/buffer.c, src/screen.c
+
+Patch 8.2.4392 (after 8.2.4002)
+Problem: MS-Windows with VIMDLL: Escaping CSI is wrong.
+Solution: Put back #ifdef. (Ken Takata, closes #9769)
+Files: src/getchar.c
+
+Patch 8.2.4393
+Problem: Possible number overflow with nested folds.
+Solution: Avoid a negative line number.
+Files: src/fold.c
+
+Patch 8.2.4394 (after 8.2.4392)
+Problem: UTF8 select mode test fails on MS-Windows.
+Solution: Revert the #ifdef change.
+Files: src/getchar.c
+
+Patch 8.2.4395
+Problem: Some code lines not covered by tests.
+Solution: Add a few more test cases. Fix getting more than one error for
+ invalid assignment.
+Files: src/evalvars.c, src/errors.h, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.4396 (after 8.2.4395)
+Problem: Python3 test fails.
+Solution: Remove "let".
+Files: src/testdir/test_vim9_func.vim
+
+Patch 8.2.4397
+Problem: Crash when using many composing characters in error message.
+Solution: Use mb_cptr2char_adv() instead of mb_ptr2char_adv().
+Files: src/testing.c, src/testdir/test_assert.vim
+
+Patch 8.2.4398
+Problem: Some command completion functions are too long.
+Solution: Refactor code into separate functions. Add a few more tests.
+ (Yegappan Lakshmanan, closes #9785)
+Files: src/cmdexpand.c, src/ex_getln.c, src/usercmd.c,
+ src/proto/usercmd.pro, src/testdir/test_cmdline.vim
+
+Patch 8.2.4399
+Problem: Crash after ml_get error.
+Solution: When returning "???" flush the line and set ml_line_lnum.
+Files: src/memline.c
+
+Patch 8.2.4400 (after 8.2.4394)
+Problem: MS-Windows: cannot use the mouse in the console with VIMDLL.
+Solution: use add_char2buf() instead of fix_input_buffer(). (closes #9784,
+ closes #9769)
+Files: src/getchar.c
+
+Patch 8.2.4401
+Problem: Map listing does not clear the rest of the command line.
+Solution: Call msg_clear_eos(). (closes #5623, closes #5962)
+Files: src/map.c, src/testdir/test_mapping.vim,
+ src/testdir/dumps/Test_map_list_1.dump
+
+Patch 8.2.4402
+Problem: Missing parenthesis may cause unexpected problems.
+Solution: Add more parenthesis is macros. (closes #9788)
+Files: src/autocmd.c, src/charset.c, src/drawline.c, src/drawscreen.c,
+ src/evalfunc.c, src/fileio.c, src/fold.c, src/getchar.c,
+ src/highlight.c, src/memline.c, src/normal.c, src/quickfix.c,
+ src/regexp.c, src/search.c, src/sha256.c, src/spell.c,
+ src/spellfile.c, src/spellsuggest.c, src/syntax.c, src/window.c
+
+Patch 8.2.4403
+Problem: ml_get error with nested folds and deleting lines.
+Solution: Correct the last line number before calling hasFoldingWin().
+Files: src/change.c
+
+Patch 8.2.4404
+Problem: Vim9: some code not covered by tests.
+Solution: Add a few specific test cases.
+Files: src/vim9execute.c, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4405
+Problem: Compiler warning for unused variable without the +folding feature.
+ (Tony Mechelynck)
+Solution: Add #ifdef.
+Files: src/change.c
+
+Patch 8.2.4406
+Problem: Expand functions use confusing argument names.
+Solution: Rename "file" to "match". Refactor some completion code. Add a
+ few more tests. (Yegappan Lakshmanan, closes #9790)
+Files: src/cmdexpand.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.4407
+Problem: Vim9: some code not covered by tests.
+Solution: Add more tests. Avoid giving two errors. Remove dead code.
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4408
+Problem: Vim9: some code not covered by tests.
+Solution: Add a few more tests. Correct error message. Allow unlet on dict
+ with a number key.
+Files: src/vim9execute.c, src/errors.h, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4409
+Problem: Vim9: some code not covered by tests.
+Solution: Add a few more tests. Fix reported line number.
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4410
+Problem: Vim9: some code not covered by tests.
+Solution: Add a few more tests. Remove dead code.
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4411
+Problem: Bicep files are not recognized.
+Solution: Match *.bicep files. (Dundar Goc, closes #9791)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4412
+Problem: Translation cleanup script does not remove empty lines at end.
+Solution: Remove empty lines at the end. (Ken Takata, closes #9794)
+Files: src/po/cleanup.vim
+
+Patch 8.2.4413
+Problem: Vim9: Coverity warns for using NULL pointer.
+Solution: Give an internal error when funcref function can't be found.
+Files: src/vim9execute.c
+
+Patch 8.2.4414
+Problem: Solidity files are not recognized.
+Solution: Add the *.sol pattern. (Dundar Goc, closes #9792)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4415
+Problem: Function argument name conflicts with C++ keyword.
+Solution: Rename the argument.
+Files: src/usercmd.c, src/proto/usercmd.pro
+
+Patch 8.2.4416
+Problem: Vim9: using a script-local function requires using "s:" when
+ setting 'completefunc'.
+Solution: Do not require "s:" in Vim9 script. (closes #9796)
+Files: runtime/doc/options.txt, src/userfunc.c,
+ src/testdir/test_ins_complete.vim
+
+Patch 8.2.4417 (after 8.2.4416)
+Problem: Using NULL pointer.
+Solution: Set offset after checking for NULL pointer.
+Files: src/userfunc.c
+
+Patch 8.2.4418
+Problem: Crash when using special multi-byte character.
+Solution: Don't use isalpha() for an arbitrary character.
+Files: src/charset.c, src/proto/charset.pro, src/filepath.c,
+ src/testdir/test_autochdir.vim
+
+Patch 8.2.4419
+Problem: Illegal memory access when using exactly 20 highlights.
+Solution: Add one more item in the array. (Brandon Richardson,
+ closes #9800)
+Files: src/buffer.c, src/testdir/test_tabline.vim
+
+Patch 8.2.4420
+Problem: Menu translations are inconsistent.
+Solution: Add a Makefile to convert between encodings. (Ada (Haowen) Yu,
+ closes #9801)
+Files: runtime/lang/Makefile, runtime/lang/menu_af_af.latin1.vim,
+ runtime/lang/menu_ca_es.latin1.vim,
+ runtime/lang/menu_chinese_gb.936.vim,
+ runtime/lang/menu_chinese_taiwan.950.vim,
+ runtime/lang/menu_cs_cz.iso_8859-2.vim,
+ runtime/lang/menu_cs_cz.utf-8.vim,
+ runtime/lang/menu_czech_czech_republic.1250.vim,
+ runtime/lang/menu_czech_czech_republic.ascii.vim,
+ runtime/lang/menu_da.utf-8.vim,
+ runtime/lang/menu_de_de.latin1.vim,
+ runtime/lang/menu_eo.utf-8.vim,
+ runtime/lang/menu_es_es.latin1.vim,
+ runtime/lang/menu_fi_fi.latin1.vim,
+ runtime/lang/menu_fr_fr.latin1.vim,
+ runtime/lang/menu_hu_hu.iso_8859-2.vim,
+ runtime/lang/menu_hu_hu.utf-8.vim,
+ runtime/lang/menu_is_is.latin1.vim,
+ runtime/lang/menu_it_it.latin1.vim,
+ runtime/lang/menu_ja_jp.euc-jp.vim,
+ runtime/lang/menu_ja_jp.utf-8.vim,
+ runtime/lang/menu_japanese_japan.932.vim,
+ runtime/lang/menu_ko_kr.euckr.vim,
+ runtime/lang/menu_ko_kr.utf-8.vim,
+ runtime/lang/menu_nl_nl.latin1.vim,
+ runtime/lang/menu_no_no.latin1.vim,
+ runtime/lang/menu_pl_pl.iso_8859-2.vim,
+ runtime/lang/menu_pl_pl.utf-8.vim,
+ runtime/lang/menu_polish_poland.1250.vim,
+ runtime/lang/menu_pt_br.vim, runtime/lang/menu_pt_pt.vim,
+ runtime/lang/menu_ru.utf-8.vim,
+ runtime/lang/menu_ru_ru.koi8-r.vim,
+ runtime/lang/menu_ru_ru.utf-8.vim, runtime/lang/menu_ru_ru.vim,
+ runtime/lang/menu_sk_sk.iso_8859-2.vim,
+ runtime/lang/menu_sl_si.cp1250.vim,
+ runtime/lang/menu_sl_si.latin2.vim,
+ runtime/lang/menu_sl_si.utf-8.vim,
+ runtime/lang/menu_slovak_slovak_republic.1250.vim,
+ runtime/lang/menu_sr_rs.ascii.vim,
+ runtime/lang/menu_sr_rs.iso_8859-2.vim,
+ runtime/lang/menu_sr_rs.iso_8859-5.vim,
+ runtime/lang/menu_sr_rs.utf-8.vim,
+ runtime/lang/menu_sv_se.latin1.vim,
+ runtime/lang/menu_tr_tr.cp1254.vim,
+ runtime/lang/menu_tr_tr.iso_8859-9.vim,
+ runtime/lang/menu_tr_tr.utf-8.vim,
+ runtime/lang/menu_uk_ua.cp1251.vim,
+ runtime/lang/menu_uk_ua.koi8-u.vim,
+ runtime/lang/menu_uk_ua.utf-8.vim, runtime/lang/menu_vi_vn.vim,
+ runtime/lang/menu_zh_cn.utf-8.vim,
+ runtime/lang/menu_zh_tw.utf-8.vim
+
+Patch 8.2.4421
+Problem: Some installed files and directories have wrong permissions.
+Solution: Adjust the Makefile and shell to set permissions. (closes #9793)
+Files: src/Makefile, src/installman.sh
+
+Patch 8.2.4422
+Problem: Autochdir test fails on MS-Windows.
+Solution: Expect another error on MS-Windows.
+Files: src/testdir/test_autochdir.vim
+
+Patch 8.2.4423
+Problem: "make nvcmdidxs" fails.
+Solution: Use "-S" instead of "-u" to source the script.
+Files: src/Makefile
+
+Patch 8.2.4424
+Problem: ".gts" and ".gjs" files are not recognized.
+Solution: Recognize Glimmer flavored typescript and javascript.
+ (closes #9799)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4425
+Problem: map() function does not check function arguments at compile time.
+Solution: Give an error if the arguments of a map() function are wrong.
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.4426
+Problem: map() function on string and blob does not check argument types at
+ compile time.
+Solution: Check string and blob argument types. Support "0z1234->func()".
+Files: src/vim9compile.c, src/evalfunc.c, src/ex_docmd.c,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4427
+Problem: getchar() may return modifiers if no character is available.
+Solution: Do not process modifiers when there is no character. (closes #9806)
+Files: src/getchar.c, src/testdir/test_functions.vim
+
+Patch 8.2.4428
+Problem: Crash when switching tabpage while in the cmdline window.
+Solution: Disallow switching tabpage when in the cmdline window.
+Files: src/window.c, src/proto/window.pro, src/evalvars.c,
+ src/evalvars.c, src/usercmd.c
+
+Patch 8.2.4429
+Problem: Using script-local function from the wrong script when using a
+ partial. (Yegappan Lakshmanan)
+Solution: Include the script ID in the partial name.
+Files: src/userfunc.c, src/proto/userfunc.pro, src/evalfunc.c,
+ src/vim9type.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4430
+Problem: GTK: crash when using 'guiligatures' and reading from stdin.
+Solution: Make a copy of the message. (Amon Sha, closes #9719, closes #9814)
+Files: src/fileio.c
+
+Patch 8.2.4431
+Problem: Unnecessary condition when assigning to a variable.
+Solution: Remove the condition.
+Files: src/evalvars.c
+
+Patch 8.2.4432 (after 8.2.4428)
+Problem: Cannot use settabvar() while the cmdline window is open.
+Solution: Only give an error when actually switching tabpage.
+ (closes #9813)
+Files: src/window.c
+
+Patch 8.2.4433
+Problem: CI: cannot see interface versions for MS-Windows.
+Solution: List the interface versions. (Ken Takata, closes #9811)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4434
+Problem: Duplicate check for cmdline window.
+Solution: Remove the second check. (Sean Dewar, closes #9816)
+Files: src/window.c
+
+Patch 8.2.4435
+Problem: Dead code in checking map() arguments. (Dominique Pellé)
+Solution: Remove the first return statement. (closes #9815)
+Files: src/evalfunc.c
+
+Patch 8.2.4436
+Problem: Crash with weird 'vartabstop' value.
+Solution: Check for running into the end of the line.
+Files: src/indent.c, src/testdir/test_vartabs.vim
+
+Patch 8.2.4437
+Problem: Vartabs test fails on MS-Windows.
+Solution: Use iso8859-1 'encoding'. (Ken Takata, closes #9818)
+Files: src/testdir/test_vartabs.vim
+
+Patch 8.2.4438
+Problem: Crash on exit when using cmdline window.
+Solution: Reset "cmdwin_type" before exiting. (closes #9817)
+Files: src/ui.c, src/testdir/test_exit.vim
+
+Patch 8.2.4439
+Problem: Accepting "iso8859" 'encoding' as "iso-8859-".
+Solution: use "iso8859" as "iso-8859-1".
+Files: src/mbyte.c, src/testdir/test_options.vim
+
+Patch 8.2.4440
+Problem: Crash with specific regexp pattern and string.
+Solution: Stop at the start of the string.
+Files: src/regexp_bt.c, src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.4441
+Problem: Vim9: function argument of filter() not checked like map().
+Solution: Also check the function argument of filter().
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4442 (after 8.2.4438)
+Problem: Test for error reading input fails on MS-Windows.
+Solution: Don't run the test on MS-Windows.
+Files: src/testdir/test_exit.vim
+
+Patch 8.2.4443 (after 8.2.4440)
+Problem: Regexp pattern test fails on Mac.
+Solution: Do not use a swapfile for the buffer.
+Files: src/testdir/test_regexp_utf8.vim
+
+Patch 8.2.4444
+Problem: Beep caused by test. ASAN reports leaks.
+Solution: Do not put a NL at the end of the script. Make the text work on
+ MS-Windows. Do not run the test with ASAN.
+Files: src/testdir/test_exit.vim
+
+Patch 8.2.4445
+Problem: Exit test fails on MS-Windows anyway.
+Solution: Skip the test on MS-Windows.
+Files: src/testdir/test_exit.vim
+
+Patch 8.2.4446
+Problem: Vim9: cannot refer to a global function like a local one.
+Solution: When g:name is not a variable but a function, use a function
+ reference. (closes #9826)
+Files: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4447
+Problem: Vim9: can still use s:var in a compiled function.
+Solution: Disallow using s:var for Vim9 script. (closes #9824)
+Files: runtime/doc/vim9.txt, src/vim9expr.c, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4448 (after 8.2.4447)
+Problem: Filetype detection is failing.
+Solution: Do not use "s:" where it is no longer allowed.
+Files: runtime/autoload/dist/ft.vim,
+
+Patch 8.2.4449
+Problem: vim9: function argument of sort() not checked at compile time.
+Solution: Add a compile time check.
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4450 (after 8.2.4449)
+Problem: List sort test fails.
+Solution: Pass a valid "how" argument.
+Files: src/testdir/test_listdict.vim
+
+Patch 8.2.4451 (after 8.2.4450)
+Problem: sort() fails when ignoring case.
+Solution: Accept a number one argument in sort().
+Files: src/evalfunc.c, src/testdir/test_listdict.vim
+
+Patch 8.2.4452
+Problem: Test for what 8.2.4436 fixes does not check for regression.
+Solution: Set several options. (Ken Takata, closes #9830)
+Files: src/testdir/test_vartabs.vim
+
+Patch 8.2.4453
+Problem: :helpgrep may free an option that was not allocated. (Yegappan
+ Lakshmanan)
+Solution: Check if the value was allocated.
+Files: src/option.c, src/proto/option.pro, src/quickfix.c,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.4454
+Problem: Resetting cmdwin_type only for one situation.
+Solution: Reset cmdwin_type before closing windows. (closes #9822)
+Files: src/ui.c, src/window.c, src/testdir/test_exit.vim
+
+Patch 8.2.4455
+Problem: Accepting one and zero for the second sort() argument is strange.
+Solution: Disallow using one and zero in Vim9 script.
+Files: runtime/doc/builtin.txt, src/evalfunc.c, src/list.c,
+ src/testdir/test_listdict.vim
+
+Patch 8.2.4456
+Problem: Terminal test may fail on some machines.
+Solution: Increase wait time. (Zdenek Dohnal, closes #9834)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.4457
+Problem: The GPM library can only be linked statically.
+Solution: Make it possible to load the GPM library dynamically. (Damien)
+Files: runtime/doc/various.txt, src/config.h.in, src/configure.ac,
+ src/Makefile, src/evalfunc.c, src/feature.h, src/os_unix.c,
+ src/proto/os_unix.pro, src/version.c
+
+Patch 8.2.4458
+Problem: Vim9: compiling filter() call fails with funcref that has unknown
+ arguments.
+Solution: Do not check the arguments if they are unknown at compile time.
+ (closes #9835)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4459
+Problem: Vim9: compiling sort() call fails with a funcref that has unknown
+ arguments.
+Solution: Do not check the arguments if they are unknown at compile time.
+ (closes #9835)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4460
+Problem: Vim9: wrong error for defining dict function.
+Solution: Explicitly check for trying to define a dict function.
+ (closes #9827)
+Files: src/errors.h, src/userfunc.c, src/vim9compile.c,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.4461
+Problem: MS-Windows: garbage characters on stdout with VIMDLL.
+Solution: Don't call gui_focus_change() when about to quit. (Ken Takata,
+ closes #9840)
+Files: src/gui_w32.c
+
+Patch 8.2.4462
+Problem: Not enough testing for quickfix code.
+Solution: Add more tests. Fix uncovered problem. (Yegappan Lakshmanan,
+ closes #9839)
+Files: src/quickfix.c, src/window.c, src/testdir/test_makeencoding.vim,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.4463
+Problem: Completion only uses strict matching.
+Solution: Add the "fuzzy" item for 'wildoptions'. (Yegappan Lakshmanan,
+ closes #9803)
+Files: runtime/doc/options.txt, src/buffer.c, src/cmdexpand.c,
+ src/option.c, src/option.h, src/optionstr.c,
+ src/proto/cmdexpand.pro, src/proto/option.pro,
+ src/proto/search.pro, src/search.c, src/structs.h,
+ src/testdir/gen_opt_test.vim, src/testdir/test_cmdline.vim
+
+Patch 8.2.4464
+Problem: Dtrace files are recognized as filetype D.
+Solution: Add a pattern for Dtrace files. (Teubel György, closes #9841)
+ Add some more testing.
+Files: runtime/autoload/dist/ft.vim, runtime/filetype.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.4465
+Problem: Fuzzy completion does not order matches properly.
+Solution: Do not use regular expression match. (Yegappan Lakshmanan,
+ closes #9843)
+Files: src/cmdexpand.c, src/search.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4466
+Problem: MS-Windows: illegal memory access in installer when using
+ "create-directories" as the final argument.
+Solution: Check the argument count. (Cam Sinclair, closes #9844)
+Files: src/dosinst.c
+
+Patch 8.2.4467
+Problem: Running filetype test leaves file behind.
+Solution: Delete the file.
+Files: src/testdir/test_filetype.vim
+
+Patch 8.2.4468
+Problem: Coverity warns for uninitialized struct member.
+Solution: Set color.index to zero.
+Files: src/terminal.c
+
+Patch 8.2.4469
+Problem: Coverity warns for uninitialized variable.
+Solution: Set the value to zero.
+Files: src/ex_getln.c
+
+Patch 8.2.4470
+Problem: Coverity warns for uninitialized variable.
+Solution: Set can_spell to zero.
+Files: src/drawline.c
+
+Patch 8.2.4471
+Problem: Coverity warns for uninitialized variable.
+Solution: Set flags to zero.
+Files: src/vim9cmds.c
+
+Patch 8.2.4472
+Problem: Coverity warns for use of a freed function name.
+Solution: Only check an autoload name when is prefixed.
+Files: src/userfunc.c
+
+Patch 8.2.4473
+Problem: Coverity warns for not checking return value of ftell().
+Solution: Bail out if ftell() returns a negative value.
+Files: src/spellfile.c
+
+Patch 8.2.4474
+Problem: Memory allocation failures not tested in quickfix code.
+Solution: Add alloc IDs and tests. (Yegappan Lakshmanan, closes #9848)
+Files: src/alloc.h, src/quickfix.c, src/vim.h,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.4475
+Problem: Fuzzy cmdline completion does not work for lower case.
+Solution: Also use fuzzy completion for lower case input. (Yegappan
+ Lakshmanan, closes #9849)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4476
+Problem: Operator name spelled wrong.
+Solution: Change trinary to ternary. (Goc Dundar, closes #9850)
+Files: src/testdir/test_expr.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.4477
+Problem: Crash when using fuzzy completion.
+Solution: Temporary fix: put back regexp. (closes #9851)
+Files: src/cmdexpand.c
+
+Patch 8.2.4478
+Problem: Crash when using fuzzy completion.
+Solution: Temporary fix: put back regexp. (closes #9852, closes #9851)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4479
+Problem: No fuzzy completion for maps and abbreviations.
+Solution: Fuzzy complete maps and abbreviations. (Yegappan Lakshmanan,
+ closes #9856)
+Files: src/cmdexpand.c, src/map.c, src/proto/map.pro, src/search.c,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.4480
+Problem: Suspending with CTRL-Z does not work on Android.
+Solution: Do not handle SIGTSTP. (closes #9854)
+Files: src/os_unix.c
+
+Patch 8.2.4481
+Problem: Cmdline popup menu not removed when 'lazyredraw' is set.
+Solution: Temporarily reset 'lazyredraw' when removing the popup menu.
+ (closes #9857)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_pum_41.dump
+
+Patch 8.2.4482
+Problem: No fuzzy cmdline completion for user defined completion.
+Solution: Add fuzzy completion for user defined completion. (Yegappan
+ Lakshmanan, closes #9858)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4483
+Problem: Command completion makes two rounds to collect matches.
+Solution: Use a growarray to collect matches. (Yegappan Lakshmanan,
+ closes #9860)
+Files: src/buffer.c, src/cmdexpand.c, src/map.c,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.4484
+Problem: Vim9: some error messages are not tested.
+Solution: Add a few more test cases. Delete dead code.
+Files: src/vim9execute.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4485
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize the variable. (John Marriott)
+Files: src/cmdexpand.c
+
+Patch 8.2.4486
+Problem: MS-Windows GUI: slow scrolling with maximized window.
+Solution: Use a better way to check the window is on screen. (Ken Takata,
+ closes #9865)
+Files: src/gui_w32.c
+
+Patch 8.2.4487
+Problem: Vim9: cannot compare with v:null.
+Solution: Allow comparing anything with v:null. (closes #9866)
+Files: src/vim9instr.c, src/typval.c, src/proto/typval.pro,
+ src/vim9.h, src/vim9execute.c, src/evalvars.c,
+ src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4488 (after 8.2.4487)
+Problem: Build error with +eval but without +channel or +job.
+Solution: Add #ifdef. (John Marriott)
+Files: src/typval.c
+
+Patch 8.2.4489 (after 8.2.4487)
+Problem: Failing test for comparing v:null with number.
+Solution: Allow comparing v:null with number in legacy script.
+ (Ken Takata, closes #9873) Also do this for float.
+Files: src/typval.c, src/testdir/test_vimscript.vim
+
+Patch 8.2.4490
+Problem: Terminal focus reporting only works for xterm-like terminals.
+ (Jonathan Rascher)
+Solution: Remove the "focus_mode" flag. (closes #9859)
+Files: src/term.c
+
+Patch 8.2.4491
+Problem: MS-Windows makefile dependencies are outdated.
+Solution: Update dependencies. (Ken Takata, closes #9876)
+Files: src/Make_cyg_ming.mak, src/Make_mvc.mak
+
+Patch 8.2.4492
+Problem: No error if an option is given an invalid value with
+ ":let &opt = val".
+Solution: Give the error. (closes #9864)
+Files: src/evalvars.c, src/testdir/test_options.vim
+
+Patch 8.2.4493 (after 8.2.4492)
+Problem: Options test fails in the GUI.
+Solution: Do not save and restore 'term'.
+Files: src/testdir/gen_opt_test.vim
+
+Patch 8.2.4494
+Problem: The find_tags() function is much too long.
+Solution: Refactor the function. (Yegappan Lakshmanan, closes #9869)
+Files: src/quickfix.c, src/tag.c, src/testdir/test_tagjump.vim
+
+Patch 8.2.4495
+Problem: Help test fails in 24 line terminal.
+Solution: Use up to 23 lines for text.
+Files: src/testdir/test_help.vim
+
+Patch 8.2.4496 (after 8.2.4494)
+Problem: Coverity gives warnings after tags code refactoring.
+Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #9882)
+Files: src/tag.c
+
+Patch 8.2.4497
+Problem: Wrong color for half of wide character next to pum scrollbar.
+Solution: Redraw the screen cell with the right color. (closes #9874)
+Files: src/screen.c, src/testdir/test_ins_complete.vim,
+ src/testdir/dumps/Test_scrollbar_on_wide_char.dump
+
+Patch 8.2.4498
+Problem: Using <Plug> with "noremap" does not work.
+Solution: Always remap <Plug>. (closes #9879, closes #9789)
+Files: runtime/doc/map.txt, src/getchar.c, src/testdir/test_mapping.vim
+
+Patch 8.2.4499
+Problem: Vim9: at the script level declarations leak from try block to
+ catch and finally block.
+Solution: End the block and start a new one. (closes #9883)
+Files: src/ex_eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4500
+Problem: Vim9: can declare a global variable on the command line.
+Solution: Disallow declaring a variable on the command line. (closes #9881)
+Files: src/errors.h, src/evalvars.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/dumps/Test_vim9_reject_declaration.dump
+
+Patch 8.2.4501
+Problem: With 'showbreak' set and after the end of the line the cursor
+ may be displayed in the wrong position.
+Solution: Do not apply 'showbreak' after the end of the line. (closes #9884)
+Files: src/charset.c, src/testdir/test_breakindent.vim,
+ src/testdir/dumps/Test_cursor_position_with_showbreak.dump
+
+Patch 8.2.4502
+Problem: In the GUI a modifier is not recognized for the key typed after
+ CTRL-X, which may result in a mapping to be used. (Daniel
+ Steinberg)
+Solution: Recognize a modifier starting with CSI. (closes #9889)
+Files: src/getchar.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.4503
+Problem: Vim9: there is no point in supporting :Print and :mode.
+Solution: Do not recognize :Print and :mode as commands. (closes #9870)
+Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4504
+Problem: When there is a partially matching map and modifyOtherKeys is
+ active a full map may not work.
+Solution: Only simplify modifiers when there is no matching mapping.
+ (closes #8792)
+Files: src/getchar.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.4505
+Problem: Vim9: outdated "autocmd nested" still works.
+Solution: Do not accept the :autocmd argument "nested" without "++" in Vim9
+ script.
+Files: src/autocmd.c, src/errors.h, src/testdir/test_autocmd.vim
+
+Patch 8.2.4506
+Problem: "pattern not found" for :global is not an error message.
+Solution: In Vim9 script make this an actual error, so that try/catch can be
+ used as expected.
+Files: src/ex_cmds.c, src/errors.h, src/testdir/test_global.vim
+
+Patch 8.2.4507 (after 8.2.4506)
+Problem: Test fails because of new error message.
+Solution: Avoid the test fails.
+Files: src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4508
+Problem: Vim9: cannot assign to a global variable on the command line.
+Solution: Allow using :vim9cmd for assignment on the command line.
+Files: src/evalvars.c, src/testdir/test_vim9_script.vim,
+ src/testdir/dumps/Test_vim9_reject_declaration.dump,
+ src/testdir/dumps/Test_vim9_reject_declaration_1.dump,
+ src/testdir/dumps/Test_vim9_reject_declaration_2.dump
+
+Patch 8.2.4509
+Problem: Vim9: can declare a variable with ":va".
+Solution: Disallow using ":va", require using ":var".
+Files: src/evalvars.c, src/errors.h, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4510
+Problem: Vim9: shortening commands leads to confusing script.
+Solution: In Vim9 script require at least ":cont" for ":continue", "const"
+ instead of "cons", "break" instead of "brea", "catch" instead of
+ "cat", "else" instead of "el" "elseif" instead of "elsei" "endfor"
+ instead of "endfo" "endif" instead of "en" "endtry" instead of
+ "endt", "finally" instead of "fina", "throw" instead of "th",
+ "while" instead of "wh".
+Files: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/evalvars.c,
+ src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4511
+Problem: Filetype test fails.
+Solution: Change "endw" to "endwhile".
+Files: runtime/autoload/dist/ft.vim
+
+Patch 8.2.4512
+Problem: The find_tags_in_file() function is much too long.
+Solution: Refactor into multiple smaller functions. (Yegappan Lakshmanan,
+ closes #9892)
+Files: Filelist, src/Makefile, src/quickfix.c, src/tag.c,
+ src/testdir/test83-tags2, src/testdir/test83-tags3,
+ src/testdir/test_tagjump.vim
+
+Patch 8.2.4513
+Problem: Window-local directory is not applied if 'acd' fails.
+Solution: Don't call do_autochdir(). (closes #9891)
+Files: src/window.c, src/testdir/test_autochdir.vim
+
+Patch 8.2.4514
+Problem: Vim9: some flow commands can be shortened.
+Solution: Also require using the full name for ":return", ":enddef",
+ ":continue", ":export" and ":import".
+Files: src/ex_cmds.h, src/ex_docmd.c, src/errors.h, src/userfunc.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4515
+Problem: Old substitute syntax is still supported.
+Solution: Disallow using backslash after ":s" in Vim9 script.
+Files: src/ex_cmds.c, src/errors.h, src/testdir/test_substitute.vim
+
+Patch 8.2.4516 (after 8.2.4515)
+Problem: Build failure without the +eval feature.
+Solution: Move error message outside of #ifdef.
+Files: src/errors.h
+
+Patch 8.2.4517
+Problem: MS-Windows: cannot specify location of sodium library.
+Solution: Allow for using a path for SODIUM. (Ken Takata, closes #9896)
+Files: src/Make_cyg_ming.mak
+
+Patch 8.2.4518
+Problem: The binary tag search feature is always enabled.
+Solution: Remove the #ifdefs. Add a few more tests. (Yegappan Lakshmanan,
+ closes #9893)
+Files: src/evalfunc.c, src/feature.h, src/tag.c, src/version.c,
+ src/testdir/test_tagjump.vim, src/testdir/test_taglist.vim
+
+Patch 8.2.4519
+Problem: Vim9: Can still use ":fini" and ":finis" for ":finish".
+Solution: Require using ":finish".
+Files: src/ex_cmds.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4520
+Problem: Using wrong highlight for cursor line number.
+Solution: Take filler lines into account when using CursorLineNr.
+ (closes #9897)
+Files: src/drawline.c, src/testdir/test_diffmode.vim,
+ src/testdir/dumps/Test_diff_with_cursorline_number_01.dump,
+ src/testdir/dumps/Test_diff_with_cursorline_number_02.dump
+
+Patch 8.2.4521 (after 8.2.4520)
+Problem: Build failure without the +diff feature. (John Marriott)
+Solution: Define filler+lines if not declaring it.
+Files: src/drawline.c
+
+Patch 8.2.4522 (after 8.2.4492)
+Problem: GUI test fails with Motif. (Dominique Pellé)
+Solution: Remove using an invalid value for 'guifontset'.
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.4523
+Problem: When gvim is started maximized the 'window' option isn't set
+ properly. (Christian J. Robinson)
+Solution: Check if 'windows' was already set or not. (Ken Takata,
+ closes #9904)
+Files: src/term.c
+
+Patch 8.2.4524
+Problem: MS-Windows: cannot build with some sodium libraries.
+Solution: Make the DLL name configurable. Add build instructions.
+ (Ken Takata, closes #9905)
+Files: src/INSTALLpc.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
+ src/crypt.c
+
+Patch 8.2.4525
+Problem: Some GUI tests don't work on Athena.
+Solution: Skip tests that won't work. (Yegappan Lakshmanan, closes #9902)
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.4526
+Problem: Vim9: cannot set variables to a null value.
+Solution: Add null_list, null_job, etc.
+Files: runtime/doc/vim9.txt, src/eval.c, src/proto/eval.pro,
+ src/vim9expr.c, src/vim9script.c, src/vim9instr.c,
+ src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/vim9type.c,
+ src/evalvars.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_expr.vim
+
+Patch 8.2.4527
+Problem: The Athena GUI is old and does not work well.
+Solution: Remove the Athena GUI from configure to find out who still wants
+ support for this GUI.
+Files: src/configure.ac, src/auto/configure, src/Makefile
+
+Patch 8.2.4528
+Problem: Crash when using null_function for a partial.
+Solution: Don't call fname_trans_sid() with NULL. (closes #9908)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4529
+Problem: Vim9: comparing partial with function fails.
+Solution: Support this comparison. Avoid a crash. (closes #9909)
+ Add more test cases.
+Files: src/vim9instr.c, src/userfunc.c, src/vim9type.c,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.4530
+Problem: Making comparison with null work changes legacy behavior.
+Solution: Only use the better comparison in Vim9 script. (closes #9910)
+Files: src/typval.c, src/testdir/test_expr.vim
+
+Patch 8.2.4531
+Problem: LGTM warnings for condition always true and buffer size too small.
+Solution: Remove the useless condition. Make the buffer larger. (Goc
+ Dundar, closes #9914)
+Files: src/charset.c, src/term.c
+
+Patch 8.2.4532
+Problem: Suspending with CTRL-Z does not work on OpenBSD.
+Solution: Adjust #ifdef for SIGTSTP. (Stuart Henderson, closes #9912)
+Files: src/os_unix.c
+
+Patch 8.2.4533
+Problem: Vim9: no test that after assigning null the type is still checked.
+Solution: Add a test.
+Files: src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4534
+Problem: Vim9: "is" operator with empty string and null returns true.
+Solution: Consider empty string and null to be different for "is".
+Files: src/typval.c, src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4535
+Problem: Filename modifier ":8" removes the filename.
+Solution: Use strncpy() instead of vim_strncpy(). (Christian Brabandt,
+ closes #9918, closes #8600)
+Files: src/filepath.c, src/testdir/test_shortpathname.vim
+
+Patch 8.2.4536 (after 8.2.4534)
+Problem: Debugger test fails when breaking on expression.
+Solution: Compare strings with "==" instead of "is".
+Files: src/debugger.c
+
+Patch 8.2.4537
+Problem: Output from linter and language server shows up in git.
+Solution: Add patterns to .gitignore. (Goc Dundar, closes #9925)
+Files: .gitignore
+
+Patch 8.2.4538
+Problem: The find_tags_in_file() function is too long.
+Solution: Refactor into smaller functions. (Yegappan Lakshmanan,
+ closes #9920)
+Files: src/tag.c, src/testdir/test_tagjump.vim
+
+Patch 8.2.4539
+Problem: When comparing special v:none and v:null are handled the same when
+ compiling.
+Solution: Pass more information so that v:none can be handled differently at
+ compile time. (issue #9923)
+Files: src/vim9instr.c, src/vim9compile.c, src/globals.h,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4540
+Problem: Line number for error is off by one.
+Solution: Remember the line number of the comparison. (closes #9923)
+Files: src/eval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4541
+Problem: Crash in debugger when a variable is not available in the current
+ block.
+Solution: Check for a NULL name. (closes #9926)
+Files: src/vim9execute.c, src/testdir/test_debugger.vim
+
+Patch 8.2.4542
+Problem: Vim9: "break" inside try/catch not handled correctly.
+Solution: First jump to :endtry. (closes #9927)
+Files: src/vim9cmds.c, src/vim9.h, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4543
+Problem: Coverity warning for refactored tag search code.
+Solution: Avoid the warnings. Update comments. Add one more test case.
+ (Yegappan Lakshmanan, closes #9928)
+Files: src/tag.c, src/testdir/test_tagjump.vim
+
+Patch 8.2.4544
+Problem: Coverity warnings for not using returned value.
+Solution: Assign to vim_ignored.
+Files: src/tag.c
+
+Patch 8.2.4545
+Problem: MS-Windows: the installed icon is low resolution.
+Solution: Use a better icon. Install vim.ico. (Christian Brabandt,
+ closes #9931, closes #9930)
+Files: Filelist, nsis/gvim.nsi, src/vim.ico, runtime/bitmaps/vim.ico
+
+Patch 8.2.4546
+Problem: Duplicate #undef.
+Solution: Remove one #undef. (closes #9932)
+Files: src/regexp_nfa.c
+
+Patch 8.2.4547
+Problem: The neXTaw GUI is old and does not work well.
+Solution: Remove the neXTaw GUI from configure to find out who still wants
+ support for this GUI.
+Files: src/configure.ac, src/auto/configure, src/Makefile
+
+Patch 8.2.4548
+Problem: Script-local function is deleted when used in a funcref.
+Solution: Do not consider a function starting with "<SNR>" reference
+ counted. (closes #9916, closes #9820)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4549
+Problem: Cannot build with Motif and editres. (Tony Mechelynck)
+Solution: Fix configure mistake.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.4550
+Problem: Motif: cannot set the color of the scrollbar thumb.
+Solution: Remove #ifdef.
+Files: src/gui_motif.c
+
+Patch 8.2.4551
+Problem: When mapping <Esc> terminal codes are not recognized.
+Solution: Specifically recognize a mapping with just <Esc> and check for
+ terminal codes even though there is no partial mapping.
+ (closes #9903)
+Files: src/getchar.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.4552
+Problem: In a :def function "put = expr" does not work.
+Solution: Skip over white space. (closes #9936)
+Files: src/vim9cmds.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4553
+Problem: Linear tag search is a bit slow.
+Solution: Remove a vim_ftell() call. (Yegappan Lakshmanan, closes #9937)
+Files: src/tag.c, src/testdir/test_taglist.vim
+
+Patch 8.2.4554
+Problem: Vim9: using null values not sufficiently tested.
+Solution: Add more tests. Fix uncovered problem.
+Files: src/vim9type.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.4555
+Problem: getmousepos() returns the wrong column. (Ernie Rael)
+Solution: Limit to the text size, not the number of bytes.
+Files: src/mouse.c, src/testdir/test_functions.vim
+
+Patch 8.2.4556
+Problem: Test fails without the +job or +channel feature. (Dominique Pellé)
+Solution: Adjust #ifdefs. Pass on skip flag. (closes #9942)
+Files: src/eval.c, src/vim9compile.c
+
+Patch 8.2.4557
+Problem: Confusing comment about 'cursorlineopt'.
+Solution: Adjust comment. (closes #9939) Add parenthesis around logical
+ OR.
+Files: src/drawline.c
+
+Patch 8.2.4558
+Problem: Motif: using default colors does not work as expected.
+Solution: Do not try to store the default colors, use the resources.
+ (closes #9933)
+Files: src/gui_motif.c, src/gui.h
+
+Patch 8.2.4559 (after 8.24555)
+Problem: getmousepos() returns the screen column. (Ernie Rael)
+Solution: Return the text column, as documented.
+Files: src/mouse.c, src/testdir/test_functions.vim
+
+Patch 8.2.4560
+Problem: Suspending with CTRL-Z does not work on DragonFlyBSD.
+Solution: Adjust #ifdef. (Ozaki Kiichi, closes #9943)
+Files: src/os_unix.c
+
+Patch 8.2.4561
+Problem: Build failure with some combination of features. (John Marriott)
+Solution: Adjust #ifdef.
+Files: src/mouse.c
+
+Patch 8.2.4562
+Problem: Linear tag search is not optimal.
+Solution: Improve linear tag search performance. (Yegappan Lakshmanan,
+ closes #9944)
+Files: src/tag.c
+
+Patch 8.2.4563
+Problem: "z=" in Visual mode may go beyond the end of the line.
+Solution: Adjust "badlen".
+Files: src/spellsuggest.c, src/testdir/test_spell.vim
+
+Patch 8.2.4564
+Problem: Running test leaves file behind. (Dominique Pellé)
+Solution: Run the profiling in a separate Vim instance. (closes #9952)
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.4565
+Problem: No command line completion for :breakadd and :breakdel.
+Solution: Add completion for :breakadd and :breakdel. (Yegappan Lakshmanan,
+ closes #9950)
+Files: runtime/doc/builtin.txt, src/cmdexpand.c, src/spellsuggest.c,
+ src/usercmd.c, src/vim.h, src/testdir/test_cmdline.vim,
+ src/testdir/test_writefile.vim
+
+Patch 8.2.4566
+Problem: Check for existing buffer in session file does not work for files
+ in the home directory.
+Solution: Use fnamemodify(). (James Cherti, closes #9945) Add a test.
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.4567
+Problem: Bracketed paste doesn't work well in Visual linewise mode.
+Solution: Handle linewise Visual mode differently. (closes #9947)
+Files: src/normal.c, src/testdir/test_paste.vim
+
+Patch 8.2.4568
+Problem: getmousepos() does not compute the column below the last line.
+Solution: Also compute the column when the mouse is below the last line.
+ (Sean Dewar, closes #9946)
+Files: src/mouse.c, src/testdir/test_functions.vim
+
+Patch 8.2.4569
+Problem: Coverity warning for not using a return value.
+Solution: Add "(void)".
+Files: src/popupwin.c
+
+Patch 8.2.4570
+Problem: No command line completion for :profile and :profdel.
+Solution: Implement completion. (Yegappan Lakshmanan, closes #9955)
+Files: src/cmdexpand.c, src/profiler.c, src/testdir/test_cmdline.vim,
+ src/testdir/test_profile.vim
+
+Patch 8.2.4571
+Problem: Not all gdb files are recognized.
+Solution: Add a few more patterns for gdb. (Jade Lovelace, closes #9956)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4572
+Problem: Vim9: return type "any" is sometimes changed to first returned
+ type. (Virginia Senioria)
+Solution: Do not change the return type if declared as "any". (closes #9949)
+Files: src/vim9cmds.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4573
+Problem: A nested function (closure) is compiled for debugging without
+ context.
+Solution: Check if a nested function is marked for debugging before
+ compiling it. Give an error when trying to compile a closure
+ without its context. (closes #9951)
+Files: src/vim9compile.c, src/vim9execute.c, src/proto/vim9execute.pro,
+ src/vim9expr.c, src/errors.h
+
+Patch 8.2.4574
+Problem: Vim9: test for profiling fails.
+Solution: Mark function for profiling earlier to avoid E1271.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.4575
+Problem: Vim9: test for profiling still fails.
+Solution: Update flags for profiling and breakpoints when obtaining the
+ compile type. Do not set the FC_CLOSURE flag for a toplevel
+ function.
+Files: src/vim.h, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/eval.c, src/vim9execute.c, src/vim9expr.c, src/vim9instr.c,
+ src/vim9.h
+
+Patch 8.2.4576
+Problem: Vim9: error for comparing with null can be annoying.
+Solution: Allow comparing anything with null. (closes #9948)
+Files: src/vim9instr.c, src/typval.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4577
+Problem: Message test is flaky. (Elimar Riesebieter)
+Solution: Trigger the autocommand event only after startup is finished.
+Files: src/testdir/test_messages.vim
+
+Patch 8.2.4578
+Problem: No warning when an autoload script for completion function has an
+ error.
+Solution: Do not ignore errors when a function name is given with a dot or
+ '#' character. (closes #9958)
+Files: src/eval.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4579
+Problem: Cannot use page-up and page-down in the command line completion
+ popup menu.
+Solution: Check for to page-up and page-down keys. (Yegappan Lakshmanan,
+ closes #9960)
+Files: src/cmdexpand.c, src/ex_getln.c, src/spellsuggest.c, src/vim.h,
+ src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_pum_42.dump,
+ src/testdir/dumps/Test_wildmenu_pum_43.dump,
+ src/testdir/dumps/Test_wildmenu_pum_44.dump,
+ src/testdir/dumps/Test_wildmenu_pum_45.dump,
+ src/testdir/dumps/Test_wildmenu_pum_46.dump,
+ src/testdir/dumps/Test_wildmenu_pum_47.dump,
+ src/testdir/dumps/Test_wildmenu_pum_48.dump,
+ src/testdir/dumps/Test_wildmenu_pum_49.dump,
+ src/testdir/dumps/Test_wildmenu_pum_50.dump
+
+Patch 8.2.4580
+Problem: Vim9: incorrect error for shadowing variable.
+Solution: Do not pass the context when compiling a referenced function.
+Files: src/vim9expr.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4581
+Problem: Null types not fully tested.
+Solution: Add some more tests using null types.
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4582
+Problem: Useless code handling a type declaration.
+Solution: Remove the code and give an error.
+Files: src/eval.c, src/errors.h, src/testdir/test_vim9_script.vim,
+ src/testdir/dumps/Test_misplaced_type.dump
+
+Patch 8.2.4583 (after 8.2.4582)
+Problem: Screendump test fails.
+Solution: Check that making a screendump is possible.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.4584 (after 8.2.4578)
+Problem: Error for using autoload function in custom completion.
+Solution: Do not check for errors when using an autoload function.
+ (closes #9962)
+Files: src/eval.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4585
+Problem: Cannot use keypad page-up/down for completion menu.
+Solution: Recognize the keypad keys. (Yegappan Lakshmanan, closes #9963)
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4586
+Problem: Vim9: no error for using lower case name for "func" argument.
+ (Ernie Rael)
+Solution: Check the name as soon as the type is known.
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4587
+Problem: Vim9: double free after unpacking a list.
+Solution: Make a copy of the value instead of moving it. (closes #9968)
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4588
+Problem: Mapping with key code after other matching mapping does not work.
+Solution: Change ">" to ">=". (closes #9903)
+Files: src/getchar.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.4589
+Problem: Cannot index the g: dictionary.
+Solution: Recognize using "g:[key]". (closes #9969)
+Files: src/ex_docmd.c, src/eval.c, src/vim9compile.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4590
+Problem: Vim9: range type check has wrong offset.
+Solution: Adjust offset for CHECKTYPE. Remove other type check.
+Files: src/vim9compile.c, src/vim9execute.c,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4591
+Problem: Cursor line not updated when a callback moves the cursor.
+Solution: Check if the cursor moved. (closes #9970)
+Files: src/main.c, src/drawscreen.c, src/proto/drawscreen.pro,
+ src/testdir/test_cursorline.vim,
+ src/testdir/dumps/Test_cursorline_callback_1.dump
+
+Patch 8.2.4592
+Problem: Search continues after giving E1204.
+Solution: Return failure after giving E1204. (closes #9972)
+Files: src/regexp_nfa.c
+
+Patch 8.2.4593
+Problem: Unnecessary call to redraw_later().
+Solution: Remove the call to redraw_later() in op_yank(). (closes #9971)
+Files: src/register.c
+
+Patch 8.2.4594
+Problem: Need to write script to a file to be able to source them.
+Solution: Make ":source" use lines from the current buffer. (Yegappan
+ Lakshmanan et al., closes #9967)
+Files: runtime/doc/repeat.txt, runtime/doc/todo.txt, src/alloc.c,
+ src/digraph.c, src/eval.c, src/ex_cmds.h, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/vim9script.c,
+ src/testdir/test_source.vim
+
+Patch 8.2.4595
+Problem: X11: using --remote-wait may keep the CPU busy.
+Solution: Set the timeout for select() on every call. (Jacopo Secchiero,
+ closes #9973)
+Files: src/if_xcmdsrv.c
+
+Patch 8.2.4596
+Problem: Installing tutor binary may fail.
+Solution: Fix the dependency. (Sergei Trofimovich, closes #9978)
+Files: src/Makefile
+
+Patch 8.2.4597
+Problem: LuaV_debug() not covered by tests.
+Solution: Add a test. (Dominique Pellé, closes #9980)
+Files: src/testdir/test_lua.vim
+
+Patch 8.2.4598
+Problem: Profile completion test sometimes fails.
+Solution: Delete the .res file before running tests.
+Files: src/testdir/runtest.vim
+
+Patch 8.2.4599
+Problem: GTK: get assertion errors when scrolling a split window.
+Solution: Use GDK_IS_DRAWABLE() on the scrollbar window. (closes #9982)
+Files: src/gui_gtk.c
+
+Patch 8.2.4600
+Problem: Vim9: not enough test coverage for executing :def function.
+Solution: Add a few more tests. Fix inconsistencies.
+Files: src/vim9execute.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_listdict.vim, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4601
+Problem: Vim9: not enough test coverage for executing :def function.
+Solution: Add a few more tests.
+Files: src/testdir/test_vim9_script.vim, src/testdir/test_vim9_func.vim,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4602
+Problem: Vim9: not enough test coverage for executing :def function.
+Solution: Add a few more tests. Fix uncovered problem. Remove dead code.
+Files: src/vim9execute.c, src/vim9.h, src/vim9instr.c,
+ src/proto/vim9instr.pro, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4603
+Problem: Sourcing buffer lines is too complicated.
+Solution: Simplify the code. Make it possible to source Vim9 script lines.
+ (Yegappan Lakshmanan, closes #9974)
+Files: runtime/doc/repeat.txt, src/ex_docmd.c, src/proto/scriptfile.pro,
+ src/scriptfile.c, src/structs.h, src/testdir/test_source.vim
+
+Patch 8.2.4604
+Problem: Error for redefining a script item may be confusing.
+Solution: Put quotes around the name.
+Files: src/errors.h
+
+Patch 8.2.4605
+Problem: Error for arguments of remote_expr() even when the +clientserver
+ feature is not included.
+Solution: Move #ifdef.
+Files: src/clientserver.c
+
+Patch 8.2.4606 (after 8.2.4605)
+Problem: Test fails because of changed error message.
+Solution: Update the expected error message
+Files: src/testdir/test_vim9_import.vim
+
+Patch 8.2.4607
+Problem: Sourcing buffer lines may lead to errors for conflicts.
+Solution: Add the ++clear argument. (Yegappan Lakshmanan, closes #9991)
+Files: runtime/doc/repeat.txt, src/scriptfile.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/testdir/test_source.vim
+
+Patch 8.2.4608
+Problem: getcompletion() does not work properly when 'wildoptions'
+ contains "fuzzy".
+Solution: Do not use addstar(). (Yegappan Lakshmanan, closes #9992,
+ closes #9986)
+Files: runtime/doc/builtin.txt, src/cmdexpand.c,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.4609
+Problem: :unhide does not check for failing to close a window.
+Solution: When closing a window fails continue with the next one. Do not
+ try closing the autocmd window. (closes #9984)
+Files: src/buffer.c, src/window.c, src/proto/window.pro,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.4610
+Problem: Some conditions are always true.
+Solution: Remove the useless conditions. (closes #9993)
+Files: src/clientserver.c, src/drawline.c, src/drawscreen.c,
+ src/ex_cmds.c, src/fileio.c, src/message.c, src/misc2.c,
+ src/ops.c, src/sign.c, src/spell.c, src/vim9cmds.c, src/window.c
+
+Patch 8.2.4611
+Problem: Typos in tests; one lua line not covered by test.
+Solution: Fix typos. Add test case. (Dominique Pellé, closes #9994)
+Files: src/testdir/test_breakindent.vim, src/testdir/test_crypt.vim,
+ src/testdir/test_cursorline.vim, src/testdir/test_digraph.vim,
+ src/testdir/test_gui.vim, src/testdir/test_lua.vim,
+ src/testdir/test_regexp_latin.vim, src/testdir/test_signals.vim,
+ src/testdir/test_spell.vim, src/testdir/test_statusline.vim,
+ src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim, src/testdir/test_vimscript.vim
+
+Patch 8.2.4612
+Problem: Vim9: cannot use a recursive call in a nested function. (Sergey
+ Vlasov)
+Solution: Define the funcref before compiling the function. (closes #9989)
+Files: src/vim9compile.c, src/vim9instr.c, src/proto/vim9instr.pro,
+ src/vim9expr.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4613
+Problem: Return type of swapfile_unchanged() is wrong.
+Solution: Use "int". (closes #10000 Yeah!)
+Files: src/memline.c
+
+Patch 8.2.4614
+Problem: Redrawing too much when 'cursorline' is set and jumping around.
+Solution: Rely on win_update() to redraw the current and previous cursor
+ line, do not mark lines as modified. (closes #9996)
+Files: src/drawline.c, src/drawscreen.c, src/move.c, src/proto/move.pro,
+ src/option.c
+
+Patch 8.2.4615
+Problem: Mapping with escaped bar does not work in :def function. (Sergey
+ Vlasov)
+Solution: Do not remove the backslash. (closes #10002)
+Files: src/ex_docmd.c, src/proto/ex_docmd.pro, src/syntax.c,
+ src/vim9cmds.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4616
+Problem: Vim9: Declarations in a {} block of a user command do not use Vim9
+ rules if defined in a legacy script. (Yegappan Lakshmanan)
+Solution: Pretend the script is Vim9 script.
+Files: src/usercmd.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.4617
+Problem: No completion for :scriptnames.
+Solution: Implement :scriptnames completion. (Yegappan Lakshmanan,
+ closes #10005)
+Files: runtime/doc/builtin.txt, src/cmdexpand.c, src/ex_cmds.h,
+ src/scriptfile.c, src/usercmd.c, src/vim.h,
+ src/testdir/test_cmdline.vim, src/testdir/test_quickfix.vim
+
+Patch 8.2.4618
+Problem: Command line completion does not recognize single letter commands.
+Solution: Use the condition from find_ex_command().
+Files: src/ex_docmd.c
+
+Patch 8.2.4619
+Problem: Mapping is cancelled when mouse moves and popup is visible.
+Solution: Only generate mouse moved events when a popup may use them.
+ (closes #10004)
+Files: src/gui.c, src/globals.h, src/popupwin.c
+
+Patch 8.2.4620 (after 8.2.4618)
+Problem: Two letter substitute commands don't work. (Yegappan Lakshmanan)
+Solution: Invert condition.
+Files: src/ex_docmd.c
+
+Patch 8.2.4621
+Problem: Crash when using the tabline right-click menu.
+Solution: Use XtPointer for XmNuserData. (closes #10009)
+Files: src/gui_motif.c
+
+Patch 8.2.4622
+Problem: Vim9: Crash with :execute and :finish. (Sergey Vlasov)
+Solution: Check for NULL. (closes #10011)
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4623
+Problem: Coverity warns for using uninitialized field.
+Solution: Initialize the field to zero.
+Files: src/ex_docmd.c
+
+Patch 8.2.4624
+Problem: Old Coverity warning for resource leak.
+Solution: Close the file if memory allocation fails.
+Files: src/diff.c
+
+Patch 8.2.4625
+Problem: Old Coverity warning for resource leak.
+Solution: Call FreeWild() if expanding matches did not fail.
+Files: src/help.c
+
+Patch 8.2.4626
+Problem: Visual area not fully updated when removing sign in Visual mode
+ while scrolling.
+Solution: Adjust check for topline. (closes #10017)
+Files: src/drawscreen.c, src/testdir/test_display.vim,
+ src/testdir/dumps/Test_display_scroll_update_visual.dump
+
+Patch 8.2.4627
+Problem: flatten() does not use maxdepth correctly.
+Solution: Use a recursive implementation. (closes #10020)
+Files: src/list.c, src/testdir/test_flatten.vim
+
+Patch 8.2.4628
+Problem: Not enough testing for 2/3 letter substitute commands.
+Solution: Add more tests. (Yegappan Lakshmanan, closes #10019)
+Files: src/testdir/test_cmdline.vim, src/testdir/test_substitute.vim
+
+Patch 8.2.4629
+Problem: flattennew() makes a deep copy unnecessarily.
+Solution: Use a shallow copy. (issue #10012)
+Files: src/list.c
+
+Patch 8.2.4630
+Problem: 'cursorline' not always updated with 'cursorlineopt' is
+ "screenline".
+Solution: Call check_redraw_cursorline() more often. (closes #10013)
+Files: src/normal.c, src/edit.c, src/testdir/test_cursorline.vim,
+ src/testdir/dumps/Test_cursorline_screenline_1.dump,
+ src/testdir/dumps/Test_cursorline_screenline_2.dump
+
+Patch 8.2.4631
+Problem: Crash when switching window in BufWipeout autocommand.
+Solution: Put any buffer in the window to avoid it being NULL.
+ (closes #10024)
+Files: src/window.c, src/buffer.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.4632
+Problem: Using freed memory in flatten().
+Solution: Clear typval after recursing into list.
+Files: src/list.c
+
+Patch 8.2.4633
+Problem: Visual range does not work before command modifiers.
+Solution: Move Visual range to after command modifiers.
+Files: src/ex_docmd.c, src/testdir/test_source.vim
+
+Patch 8.2.4634
+Problem: Vim9: cannot initialize a variable to null_list.
+Solution: Give negative count to NEWLIST. (closes #10027)
+ Also fix inconsistencies in comparing with null values.
+Files: src/vim9instr.c, src/proto/vim9instr.pro, src/vim9.h,
+ src/vim9compile.c, src/vim9expr.c, src/vim9execute.c,
+ src/evalvars.c, src/typval.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4635 (after 8.2.4634)
+Problem: Tests using null list or dict fail.
+Solution: Only use the new rules for Vim9 script.
+Files: src/evalvars.c
+
+Patch 8.2.4636 (after 8.2.4633)
+Problem: Not using Visual range.
+Solution: Put the command pointer back to the range.
+Files: src/ex_docmd.c
+
+Patch 8.2.4637
+Problem: Warning for using uninitialized variable. (Tony Mechelynck)
+Solution: Initialize it.
+Files: src/ex_docmd.c
+
+Patch 8.2.4638
+Problem: Superfluous check if a redraw is needed for 'cursorline'.
+Solution: Remove check_redraw_cursorline(). (closes #10030, closes #10029)
+Files: src/drawscreen.c, src/proto/drawscreen.pro, src/edit.c,
+ src/main.c, src/normal.c, src/move.c,
+ src/testdir/dumps/Test_cursorcolumn_callback_1.dump,
+ src/testdir/dumps/Test_relativenumber_callback_1.dump,
+ src/testdir/test_highlight.vim, src/testdir/test_number.vim
+
+Patch 8.2.4639
+Problem: Not sufficient parenthesis in preprocessor macros.
+Solution: Add more parenthesis. (closes #10031)
+Files: src/globals.h, src/gui.h, src/if_py_both.h, src/macros.h,
+ src/option.h, src/regexp.h, src/spell.h, src/structs.h, src/vim.h,
+ src/vim9.h
+
+Patch 8.2.4640
+Problem: Some boolean options use "long" instead of "int".
+Solution: Adjust the type. (James McCoy, closes #10033)
+Files: src/option.h
+
+Patch 8.2.4641
+Problem: May mark the wrong window for redrawing.
+Solution: Use redraw_win_later(). (closes #10032)
+Files: src/move.c
+
+Patch 8.2.4642
+Problem: Vim9: in :def function script var cannot be null.
+Solution: Only initialize a script variable when not set to a null value.
+ (closes #10034)
+Files: src/vim9execute.c, src/vim9type.c, src/globals.h, src/evalvars.c,
+ src/vim.h, src/vim9script.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4643
+Problem: Vim9: variable may be locked unintentionally.
+Solution: Clear "v_lock". (closes #10036)
+Files: src/vim9execute.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4644
+Problem: Redrawing too often when 'relativenumber' is set.
+Solution: Only redraw when the cursor line changed. (Lewis Russell,
+ closes #10040)
+Files: src/change.c, src/drawscreen.c, src/structs.h
+
+Patch 8.2.4645
+Problem: 'shortmess' changed when session does not store options.
+Solution: Save and restore 'shortmess' if needed. (James Cherti,
+ closes #10037)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.4646
+Problem: Using buffer line after it has been freed in old regexp engine.
+Solution: After getting mark get the line again.
+Files: src/regexp_bt.c, src/testdir/test_regexp_latin.vim
+
+Patch 8.2.4647
+Problem: "source" can read past end of copied line.
+Solution: Add a terminating NUL.
+Files: src/scriptfile.c, src/testdir/test_source.vim
+
+Patch 8.2.4648
+Problem: Handling LSP messages is a bit slow.
+Solution: Included support for LSP messages. (Yegappan Lakshmanan,
+ closes #10025)
+Files: runtime/doc/channel.txt, src/channel.c, src/job.c, src/json.c,
+ src/proto/json.pro, src/structs.h, src/testdir/test_channel.vim,
+ src/testdir/test_channel_lsp.py
+
+Patch 8.2.4649
+Problem: Various formatting problems.
+Solution: Improve the code formatting.
+Files: src/mark.c, src/quickfix.c, src/regexp_nfa.c, src/register.c,
+ src/testdir/test_filechanged.vim, src/gui_athena.c,
+ src/gui_motif.c, src/os_unix.c
+
+Patch 8.2.4650
+Problem: "import autoload" only works with using 'runtimepath'.
+Solution: Also support a relative and absolute file name.
+Files: runtime/doc/vim9.txt, src/structs.h, src/scriptfile.c,
+ src/proto/scriptfile.pro, src/vim9script.c, src/vim9expr.c,
+ src/vim9.h, src/vim9execute.c, src/vim9instr.c,
+ src/proto/vim9instr.pro, src/vim.h, src/userfunc.c,
+ src/proto/userfunc.pro, src/testdir/test_vim9_import.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4651 (after 8.2.4650)
+Problem: Test fails because path differs.
+Solution: Only compare the tail of the path.
+Files: src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4652 (after 8.2.4650)
+Problem: Leaking memory if assignment fails.
+Solution: Clear assigned value on failure.
+Files: src/vim9execute.c
+
+Patch 8.2.4653
+Problem: "import autoload" does not check the file name.
+Solution: Give an error if the file is not readable. (closes #10049)
+Files: src/filepath.c, src/proto/filepath.pro, src/errors.h,
+ src/ex_cmds.c, src/ex_docmd.c, src/spellfile.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4654 (after 8.2.4653)
+Problem: Missing changes for import check.
+Solution: Add missing changes.
+Files: src/vim9script.c
+
+Patch 8.2.4655
+Problem: Command line completion popup menu positioned wrong when using a
+ terminal window.
+Solution: Position the popup menu differently when editing the command line.
+ (Yegappan Lakshmanan, closes #10050, closes #10035)
+Files: src/popupmenu.c, src/testdir/test_cmdline.vim,
+ src/testdir/test_terminal.vim,
+ src/testdir/dumps/Test_wildmenu_pum_term_01.dump
+
+Patch 8.2.4656
+Problem: Vim9: can't use items from "import autoload" with autoload
+ directory name.
+Solution: Let sn_autoload_prefix overrule sn_import_autoload.
+ (closes #10054)
+Files: src/structs.h, src/vim9instr.c, src/vim9expr.c, src/vim9script.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4657
+Problem: Errors for functions are sometimes hard to read.
+Solution: Use printable_func_name() in more places.
+Files: src/vim9execute.c, src/userfunc.c, src/proto/userfunc.pro,
+ src/vim9expr.c, src/eval.c, src/vim9instr.c, src/vim9type.c,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4658
+Problem: Org-mode files are not recognized.
+Solution: Add patterns to recognize "org" files. (closes #10046)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4659
+Problem: Invalid memory access when using printable function name.
+Solution: Adjust copied name length.
+Files: src/userfunc.c
+
+Patch 8.2.4660
+Problem: Cursorcolumn is sometimes not correct.
+Solution: Recompute the cursor column when entering Insert mode and the
+ cursor is on a character wider than a screen cell. (closes #10057)
+Files: src/edit.c, src/testdir/test_highlight.vim,
+ src/testdir/dumps/Test_cursorcolumn_insert_on_tab_1.dump,
+ src/testdir/dumps/Test_cursorcolumn_insert_on_tab_2.dump
+
+Patch 8.2.4661
+Problem: Coverity warning for using uninitialized variable.
+Solution: Initialize variable to NULL.
+Files: src/vim9expr.c
+
+Patch 8.2.4662
+Problem: No error for using out of range list index.
+Solution: Check list index at script level like in compiled function.
+ (closes #10051)
+Files: src/vim.h, src/evalvars.c, src/list.c, src/proto/list.pro,
+ src/eval.c, src/vim9execute.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4663
+Problem: Occasional crash when running the GUI tests.
+Solution: Check that the line index is not too high. (closes #8681)
+Files: src/screen.c
+
+Patch 8.2.4664
+Problem: Elvish files are not recognized.
+Solution: Recognize .elv files. (Bruno Roque, closes #10058)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4665
+Problem: Popup with "minwidth" and scrollbar not updated properly.
+Solution: Adjust the computation if the window width. (closes #10061)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_previewpopup_4.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_5.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_7.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_8.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_9.dump,
+ src/testdir/dumps/Test_popupwin_previewpopup_10.dump,
+ src/testdir/dumps/Test_popupwin_drag_minwidth_1.dump,
+ src/testdir/dumps/Test_popupwin_drag_minwidth_2.dump,
+ src/testdir/dumps/Test_popupwin_drag_minwidth_3.dump
+
+Patch 8.2.4666
+Problem: Vim9: assignment not recognized in skipped block.
+Solution: When skipping assume identifier exists. (closes #10059)
+Files: src/vim9compile.c, src/proto/vim9compile.pro, src/vim9cmds.c,
+ src/testdir/test_vim9_cmd.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4667
+Problem: expandcmd() fails on an error.
+Solution: On failure return the command unmodified. (Yegappan Lakshmanan,
+ closes #10063)
+Files: runtime/doc/builtin.txt, src/evalfunc.c,
+ src/testdir/test_expand.vim
+
+Patch 8.2.4668
+Problem: Buffer allocation failures insufficiently tested.
+Solution: Add tests for memory allocation failures. (Yegappan Lakshmanan,
+ closes #10064)
+Files: src/alloc.h, src/buffer.c, src/popupwin.c, src/window.c,
+ src/testdir/test_buffer.vim, src/testdir/test_swap.vim
+
+Patch 8.2.4669
+Problem: In compiled code len('string') is not inlined.
+Solution: Compute the length at compile time if possible. (closes #10065)
+Files: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9expr.c,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4670
+Problem: Memory allocation failures for new tab page not tested.
+Solution: Add tests with failing memory allocation. (Yegappan Lakshmanan,
+ closes #10067)
+Files: src/alloc.h, src/blob.c, src/buffer.c, src/window.c,
+ src/testdir/test_blob.vim, src/testdir/test_buffer.vim,
+ src/testdir/test_tabpage.vim, src/testdir/test_window_cmd.vim
+
+Patch 8.2.4671
+Problem: 'wildignorecase' is sometimes not used for glob().
+Solution: Also use 'wildignorecase' when there are no wildcards.
+ (closes #10066, closes #8350)
+Files: src/filepath.c, src/testdir/test_functions.vim
+
+Patch 8.2.4672
+Problem: Using :normal with Ex mode may make :substitute hang.
+Solution: When getting an empty line behave like 'q' was typed.
+ (closes #10070)
+Files: src/ex_cmds.c, src/testdir/test_normal.vim
+
+Patch 8.2.4673
+Problem: Redrawing a vertically split window is slow when using CTRL-F and
+ CTRL-B.
+Solution: When deciding on USE_REDRAW bail out if scrolling more than three
+ lines. (issue #8002)
+Files: src/screen.c
+
+Patch 8.2.4674
+Problem: Cannot force getting MouseMove events.
+Solution: Add the 'mousemoveevent' option with implementation for the GUI.
+ (Ernie Rael, closes #10044)
+Files: runtime/doc/gui.txt, runtime/doc/options.txt,
+ runtime/doc/testing.txt, src/gui.c, src/option.h,
+ src/optiondefs.h, src/testing.c, src/testdir/test_gui.vim
+
+Patch 8.2.4675
+Problem: No error for missing expression after :elseif. (Ernie Rael)
+Solution: Check for missing expression. (closes #10068)
+Files: src/ex_eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4676 (after 8.2.4675)
+Problem: Test fails with different error.
+Solution: Add argument to :elseif.
+Files: src/testdir/test_vimscript.vim
+
+Patch 8.2.4677
+Problem: The Athena GUI support is outdated.
+Solution: Remove the Athena GUI code.
+Files: Filelist, src/Makefile, src/proto.h, src/clipboard.c,
+ src/gui_athena.c, src/proto/gui_athena.pro, src/gui_at_sb.c,
+ src/gui_at_sb.h, src/gui_at_fs.c, src/gui_motif.c, src/evalfunc.c,
+ src/gui.c, src/gui_beval.c, src/gui_x11.c, src/if_mzsch.c,
+ src/main.c, src/menu.c, src/mouse.c, src/version.c, src/feature.h,
+ src/gui.h, src/structs.h, src/vim.h, src/testdir/gui_init.vim,
+ src/testdir/setup_gui.vim, src/testdir/test_clientserver.vim,
+ src/testdir/test_edit.vim, src/testdir/test_gui.vim,
+ src/testdir/test_highlight.vim, src/testdir/test_quotestar.vim,
+ src/testdir/test_startup.vim, runtime/doc/gui.txt,
+ runtime/doc/gui_x11.txt
+
+Patch 8.2.4678
+Problem: Vim9: not all code is tested.
+Solution: Add a few more tests.
+Files: src/vim9execute.c, src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_import.vim, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4679
+Problem: Cannot have expandcmd() give an error message for mistakes.
+Solution: Add an optional argument to give errors. Fix memory leak when
+ expanding files fails. (Yegappan Lakshmanan, closes #10071)
+Files: runtime/doc/builtin.txt, src/evalfunc.c, src/filepath.c,
+ src/testdir/test_expand.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4680
+Problem: Build failure without +postscript.
+Solution: Use another error message.
+Files: src/vim9execute.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4681
+Problem: Build fails with a combination of features.
+Solution: Remove #ifdef for alloc_clear_id(). (John Marriott)
+Files: src/alloc.c
+
+Patch 8.2.4682
+Problem: Vim9: can use :unlockvar for const variable. (Ernie Rael)
+Solution: Check whether the variable is a const.
+Files: src/ex_docmd.c, src/evalvars.c, src/vim9script.c,
+ src/proto/vim9script.pro, src/eval.c, src/userfunc.c,
+ src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4683
+Problem: Verbose check with dict_find() to see if a key is present.
+Solution: Add dict_has_key(). (Yegappan Lakshmanan, closes #10074)
+Files: src/channel.c, src/dict.c, src/evalwindow.c, src/filepath.c,
+ src/highlight.c, src/json.c, src/match.c, src/popupwin.c,
+ src/proto/dict.pro, src/quickfix.c, src/search.c, src/sign.c,
+ src/tag.c, src/terminal.c, src/testing.c, src/textprop.c,
+ src/time.c
+
+Patch 8.2.4684
+Problem: Cannot open a channel on a Unix domain socket.
+Solution: Add Unix domain socket support. (closes #10062)
+Files: runtime/doc/channel.txt, src/channel.c, src/testdir/check.vim,
+ src/testdir/shared.vim, src/testdir/test_channel.py,
+ src/testdir/test_channel.vim, src/testdir/test_channel_unix.py,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.4685
+Problem: When a swap file is found for a popup there is no dialog and the
+ buffer is loaded anyway.
+Solution: Silently load the buffer read-only. (closes #10073)
+Files: runtime/doc/popup.txt, src/memline.c, src/popupwin.c, src/vim.h,
+ src/buffer.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.4686
+Problem: Configure doesn't find the Motif library with Cygwin.
+Solution: Check for libXm.dll.a. (Kelvin Lee, closes #10077)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.4687
+Problem: "vimgrep /\%v/ *" may cause a crash.
+Solution: When compiling the pattern with the old engine fails, restore the
+ regprog of the new engine instead of leaving it NULL.
+ (closes #10079)
+Files: src/regexp.c
+
+Patch 8.2.4688
+Problem: New regexp engine does not give an error for "\%v".
+Solution: Check for a value argument. (issue #10079)
+Files: src/regexp_nfa.c, src/errors.h, src/regexp_bt.c,
+ src/testdir/test_regexp_latin.vim
+
+Patch 8.2.4689
+Problem: Using <Cmd> in a mapping does not work for mouse keys in Insert
+ mode. (Sergey Vlasov)
+Solution: When reading the <Cmd> argument do not use the stuff buffer.
+ (closes #10080)
+Files: src/getchar.c
+
+Patch 8.2.4690
+Problem: Channel tests fail on MS-Windows.
+Solution: Check if the AF_UNIX attribute exists. (closes #10083)
+Files: src/testdir/test_channel.py, src/testdir/test_channel_unix.py
+
+Patch 8.2.4691 (after 8.2.4689)
+Problem: Solution for <Cmd> in a mapping causes trouble.
+Solution: Use another solution: put back CTRL-O after reading the <Cmd>
+ sequence.
+Files: src/getchar.c
+
+Patch 8.2.4692
+Problem: No test for what 8.2.4691 fixes.
+Solution: Add a test. Use a more generic solution. (closes #10090)
+Files: src/getchar.c, src/mouse.c, src/testdir/test_mapping.vim
+
+Patch 8.2.4693 (after 8.2.4688)
+Problem: new regexp does not accept pattern "\%>0v".
+Solution: Do accept digit zero.
+Files: src/regexp_bt.c, src/regexp_nfa.c,
+ src/testdir/test_regexp_latin.vim
+
+Patch 8.2.4694
+Problem: Avoidance of #elif causes more preproc nesting.
+Solution: Use #elif where it is useful. (Ozaki Kiichi, closes #10081)
+Files: src/option.c, src/optiondefs.h, src/optionstr.c, src/version.c
+
+Patch 8.2.4695
+Problem: JSON encoding could be faster.
+Solution: Optimize encoding JSON strings. (closes #10086)
+Files: src/json.c, src/testdir/test_json.vim
+
+Patch 8.2.4696
+Problem: delete() with "rf" argument does not report a failure.
+Solution: Return -1 if the directory could not be removed. (closes #10078)
+Files: src/fileio.c, src/testdir/test_functions.vim
+
+Patch 8.2.4697
+Problem: Vim9: crash when adding a duplicate key to a dictionary.
+Solution: Clear the stack item when it has been moved into the dictionary.
+ (closes #10087)
+Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4698
+Problem: Vim9: script variable has no flag that it was set.
+Solution: Add a flag that it was set, to avoid giving it a value when used.
+ (closes #10088)
+Files: src/structs.h, src/vim9script.c, src/vim9execute.c,
+ src/evalvars.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4699
+Problem: Hard to reproduce hang when reading from a channel.
+Solution: Check for readahead before starting to wait. (closes #10093,
+ closes #7781, closes #6364)
+Files: src/channel.c
+
+Patch 8.2.4700
+Problem: Buffer remains active if a WinClosed event throws an exception.
+Solution: Ignore aborting() when closing the buffer. (closes #10097)
+Files: src/window.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.4701
+Problem: Kuka Robot Language files not recognized.
+Solution: Recognize *.src and *.dat files. (Patrick Meiser-Knosowski,
+ closes #10096)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim,
+ runtime/autoload/dist/ft.vim
+
+Patch 8.2.4702
+Problem: C++ scope labels are hard-coded.
+Solution: Add 'cinscopedecls' to define the labels. (Rom Praschan,
+ closes #10109)
+Files: runtime/doc/indent.txt, runtime/doc/options.txt,
+ runtime/doc/quickref.txt, runtime/optwin.vim, src/buffer.c,
+ src/cindent.c, src/option.c, src/option.h, src/optiondefs.h,
+ src/optionstr.c, src/structs.h, src/testdir/test_cindent.vim
+
+Patch 8.2.4703 (after 8.2.4702)
+Problem: Memory leak in handling 'cinscopedecls'.
+Solution: Free the memory before returning.
+Files: src/cindent.c
+
+Patch 8.2.4704
+Problem: Using "else" after return or break increases indent.
+Solution: Remove "else" and reduce indent. (Goc Dundar, closes #10099)
+Files: src/fileio.c, src/memline.c, src/option.c, src/syntax.c
+
+Patch 8.2.4705
+Problem: reg_executing may not be cleared.
+Solution: Reset reg_executing later. (closes #10111, closes #10110)
+Files: src/ex_docmd.c, src/getchar.c, src/globals.h, src/structs.h,
+ src/testdir/test_registers.vim
+
+Patch 8.2.4706
+Problem: Buffer remains active if a WinClosed event throws an exception
+ when there are multiple tabpages.
+Solution: Ignore aborting() when closing the buffer. (closes #10101)
+Files: src/window.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.4707
+Problem: Redrawing could be a bit more efficient.
+Solution: Optimize redrawing. (closes #10105)
+Files: src/change.c, src/edit.c, src/testdir/test_highlight.vim,
+ src/testdir/dumps/Test_cursorcolumn_insert_on_tab_3.dump
+
+Patch 8.2.4708
+Problem: PHP test files are not recognized.
+Solution: Add the *.phpt pattern. (Julien Voisin, closes #10112)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4709
+Problem: After :redraw the statusline highlight might be used.
+Solution: Clear the screen attribute after redrawing the screen.
+ (closes #10108)
+Files: src/ex_docmd.c
+
+Patch 8.2.4710
+Problem: Smart indenting does not work after completion.
+Solution: Set "can_si". (Christian Brabandt, closes #10113, closes #558)
+Files: src/edit.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.4711
+Problem: When 'insermode' is set :edit from <Cmd> mapping misbehaves.
+Solution: Don't set "need_start_insertmode" when already in Insert mode.
+ (closes #10116)
+Files: src/ex_cmds.c, src/testdir/test_edit.vim
+
+Patch 8.2.4712
+Problem: Only get profiling information after exiting.
+Solution: Add "profile dump" and "profile stop". (Marco Hinz, Yegappan
+ Lakshmanan, closes #10107)
+Files: runtime/doc/repeat.txt, src/profiler.c,
+ src/testdir/test_profile.vim
+
+Patch 8.2.4713
+Problem: Plugins cannot track text scrolling.
+Solution: Add the WinScrolled event. (closes #10102)
+Files: runtime/doc/autocmd.txt, src/autocmd.c, src/proto/autocmd.pro,
+ src/edit.c, src/gui.c, src/main.c, src/structs.h, src/vim.h,
+ src/window.c, src/proto/window.pro, src/testdir/test_autocmd.vim
+
+Patch 8.2.4714
+Problem: Using g:filetype_dat and g:filetype_src not tested.
+Solution: Add a test. (Patrick Meiser-Knosowski, closes #10117)
+Files: src/testdir/test_filetype.vim
+
+Patch 8.2.4715
+Problem: Vagrantfile not recognized.
+Solution: Recognize Vagrantfile as ruby. (Julien Voisin, closes #10119)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4716
+Problem: Memory allocation failure not tested when defining a function.
+Solution: Add a test. (Yegappan Lakshmanan, closes #10127)
+Files: src/alloc.c, src/alloc.h, src/proto/alloc.pro, src/userfunc.c,
+ src/testdir/test_user_func.vim, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4717
+Problem: For TextYankPost v:event does not contain information about the
+ operation being inclusive or not.
+Solution: Add "inclusive" to v:event. (Justin M. Keyes, Yegappan Lakshmanan,
+ closes #10125)
+Files: runtime/doc/autocmd.txt, src/register.c,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.4718
+Problem: @@@ in the last line sometimes drawn in the wrong place.
+Solution: Make sure the column is valid. (closes #10130)
+Files: src/drawscreen.c, src/screen.c, src/testdir/test_display.vim
+ src/testdir/dumps/Test_display_lastline_1.dump,
+ src/testdir/dumps/Test_display_lastline_2.dump,
+ src/testdir/dumps/Test_display_lastline_3.dump,
+ src/testdir/dumps/Test_display_lastline_4.dump
+
+Patch 8.2.4719
+Problem: ">" marker sometimes not displayed in the jumplist.
+Solution: If the buffer no longer exists show "-invalid-". (Christian
+ Brabandt, closes #10131, closes #10100)
+Files: runtime/doc/motion.txt, src/mark.c, src/testdir/Make_all.mak,
+ src/testdir/test_alot.vim, src/testdir/test_jumplist.vim,
+ src/testdir/test_jumps.vim
+
+Patch 8.2.4720
+Problem: ABB Rapid files are not recognized properly.
+Solution: Add checks for ABB Rapid files. (Patrick Meiser-Knosowski,
+ closes #10104)
+Files: runtime/autoload/dist/ft.vim, runtime/doc/filetype.txt,
+ runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4721
+Problem: Cooklang files are not recognized.
+Solution: recognize *.cook files. (Goc Dundar, closes #10120)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4722
+Problem: When a recording is ended with a mapped key that key is also
+ recorded.
+Solution: Remember the previous last_recorded_len. (closes #10122)
+Files: src/getchar.c, src/testdir/test_registers.vim
+
+Patch 8.2.4723
+Problem: The ModeChanged autocmd event is inefficient.
+Solution: Avoid allocating memory. (closes #10134) Rename
+ trigger_modechanged() to may_trigger_modechanged().
+Files: src/misc1.c, src/proto/misc1.pro, src/edit.c, src/ex_docmd.c,
+ src/ex_getln.c, src/insexpand.c, src/normal.c, src/terminal.c,
+ src/autocmd.c
+
+Patch 8.2.4724
+Problem: Current instance of last search pattern not easily spotted.
+Solution: Add CurSearch highlighting. (closes #10133)
+Files: runtime/doc/options.txt, runtime/doc/syntax.txt, src/highlight.c,
+ src/match.c, src/normal.c, src/optiondefs.h, src/structs.h,
+ src/vim.h, src/normal.c, src/testdir/test_search.vim,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_1.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_2.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_3.dump
+
+Patch 8.2.4725 (after 8.2.4724)
+Problem: Unused variable in tiny build.
+Solution: Add #ifdef.
+Files: src/normal.c
+
+Patch 8.2.4726
+Problem: Cannot use expand() to get the script name.
+Solution: Support expand('<script>'). (closes #10121)
+Files: runtime/doc/cmdline.txt, src/errors.h, src/ex_docmd.c,
+ src/scriptfile.c, src/vim.h, src/testdir/test_expand.vim
+
+Patch 8.2.4727
+Problem: Unused code.
+Solution: Remove code and add #ifdefs. (Dominique Pellé, closes #10136)
+Files: runtime/doc/editing.txt, runtime/doc/eval.txt,
+ runtime/doc/vim9.txt, src/errors.h, src/option.c, src/search.c,
+ src/proto/search.pro
+
+Patch 8.2.4728
+Problem: No test that v:event cannot be modified.
+Solution: Add a test. (closes #10139)
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.4729
+Problem: HEEx and Surface templates do not need a separate filetype.
+Solution: Use Elixir for the similar filetypes. (Aaron Tinio, closes #10124)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4730
+Problem: MS-Windows GUI: cannot use CTRL-/.
+Solution: Handle the WM_KEYUP event. (Yasuhiro Matsumoto, closes #10141)
+Files: src/gui_w32.c
+
+Patch 8.2.4731
+Problem: The changelist index is not remembered per buffer.
+Solution: Keep the changelist index per window and buffer. (closes #10135,
+ closes #2173)
+Files: src/buffer.c, src/evalfunc.c, src/structs.h,
+ src/testdir/test_changelist.vim
+
+Patch 8.2.4732
+Problem: Duplicate code to free fuzzy matches.
+Solution: Bring back fuzmatch_str_free().
+Files: src/search.c, src/proto/search.pro, src/cmdexpand.c
+
+Patch 8.2.4733 (after 8.2.4729)
+Problem: HEEx and Surface do need a separate filetype.
+Solution: Revert 8.2.4729. (closes #10147)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4734
+Problem: getcharpos() may change a mark position.
+Solution: Copy the mark position. (closes #10148)
+Files: src/eval.c, src/testdir/test_cursor_func.vim
+
+Patch 8.2.4735
+Problem: Quickfix tests can be a bit hard to read.
+Solution: Use heredoc instead of strings and line continuation. (Yegappan
+ Lakshmanan, closes #10145)
+Files: src/testdir/test_quickfix.vim
+
+Patch 8.2.4736
+Problem: Build problem for Cygwin with Motif.
+Solution: Undefine ControlMask. (Kelvin Lee, closes #10152)
+Files: src/mbyte.c
+
+Patch 8.2.4737
+Problem: // in JavaScript string recognized as comment.
+Solution: Only check for linecomment if 'cindent' is set. (closes #10151)
+Files: src/change.c, src/testdir/test_textformat.vim
+
+Patch 8.2.4738
+Problem: Esc on commandline executes command instead of abandoning it.
+Solution: Save and restore KeyTyped when removing the popup menu.
+ (closes #10154)
+Files: src/cmdexpand.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_wildmenu_with_pum_foldexpr_1.dump,
+ src/testdir/dumps/Test_wildmenu_with_pum_foldexpr_2.dump
+
+Patch 8.2.4739
+Problem: Accessing freed memory after WinScrolled autocmd event.
+Solution: Check the window pointer is still valid. (closes #10156)
+ Remove the argument from may_trigger_winscrolled().
+Files: src/window.c, src/proto/window.pro, src/edit.c, src/gui.c,
+ src/main.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.4740
+Problem: When expand() fails there is no error message.
+Solution: When 'verbose' is set give an error message.
+Files: runtime/doc/builtin.txt, src/evalfunc.c,
+ src/testdir/test_expand.vim
+
+Patch 8.2.4741 (after 8.2.4740)
+Problem: Startup test fails.
+Solution: Avoid an error for verbose expansion. Fix that the "0verbose"
+ command modifier doesn't work.
+Files: runtime/syntax/syntax.vim, runtime/syntax/synload.vim,
+ src/structs.h, src/ex_docmd.c, src/testdir/test_excmd.vim
+
+Patch 8.2.4742
+Problem: There is no way to start logging very early in startup.
+Solution: Add the --log argument. Include the date in the start message in
+ the log file. Avoid a duplicate message when forking. Log an
+ executed shell command.
+Files: runtime/doc/starting.txt, runtime/doc/channel.txt,
+ src/main.c, src/channel.c, src/os_unix.c, src/os_win32.c,
+ src/testdir/test_startup.vim
+
+Patch 8.2.4743
+Problem: Clang 14 is available on CI.
+Solution: Switch from clang 13 to 14. (closes #10157)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4744
+Problem: A terminal window can't use the bell.
+Solution: Add bell support for the terminal window. (closes #10178)
+Files: runtime/doc/options.txt, src/gui_w32.c, src/option.h,
+ src/optionstr.c, src/terminal.c
+
+Patch 8.2.4745 (after 8.2.4744)
+Problem: Using wrong flag for using bell in the terminal.
+Solution: Change to use BO_TERM.
+Files: src/terminal.c, src/misc1.c
+
+Patch 8.2.4746
+Problem: Supercollider filetype not recognized.
+Solution: Match file extensions and check file contents to detect
+ supercollider. (closes #10142)
+Files: runtime/filetype.vim, runtime/autoload/dist/ft.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.4747
+Problem: No filetype override for .sys files.
+Solution: Add g:filetype_sys. (Patrick Meiser-Knosowski, closes #10181)
+Files: runtime/doc/filetype.txt, runtime/autoload/dist/ft.vim,
+ src/testdir/test_filetype.vim
+
+Patch 8.2.4748
+Problem: Cannot use an imported function in a mapping.
+Solution: Recognize <SID>name.Func.
+Files: runtime/doc/vim9.txt, src/term.c, src/vim9execute.c,
+ src/proto/vim9execute.pro, src/scriptfile.c,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.4749
+Problem: <script> is not expanded in autocmd context.
+Solution: Add the context to the pattern struct. (closes #10144)
+ Rename AutoPatCmd to AutoPatCmd_T.
+Files: src/autocmd.c, src/proto/autocmd.pro, src/scriptfile.c,
+ src/structs.h, src/testdir/test_expand.vim
+
+Patch 8.2.4750
+Problem: Small pieces of dead code.
+Solution: Remove the dead code. (Goc Dundar, closes #10190) Rename the
+ qftf_cb struct member to avoid confusion.
+Files: src/ex_cmds.c, src/misc1.c, src/optionstr.c, src/quickfix.c
+
+Patch 8.2.4751 (after 8.2.4748)
+Problem: Mapping <SID>name.Func does not work for script in autoload
+ directory.
+Solution: Use the # form for a script in the autoload directory.
+ (closes #10186)
+Files: src/term.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4752
+Problem: Wrong 'statusline' value can cause illegal memory access.
+Solution: Properly check the value. (closes #10192)
+Files: src/optionstr.c, src/testdir/test_options.vim
+
+Patch 8.2.4753
+Problem: Error from setting an option is silently ignored.
+Solution: Handle option value errors better. Fix uses of N_().
+Files: src/option.c, src/proto/option.pro, src/optionstr.c,
+ src/channel.c, src/crypt.c, src/diff.c, src/edit.c,
+ src/eval.c, src/evalfunc.c, src/evalvars.c, src/ex_cmds2.c,
+ src/ex_docmd.c, src/ex_getln.c, src/getchar.c, src/gui.c,
+ src/gui_gtk_x11.c, src/help.c, src/highlight.c, src/if_tcl.c,
+ src/main.c, src/memline.c, src/message_test.c,
+ src/popupmenu.c, src/quickfix.c, src/scriptfile.c, src/spell.c,
+ src/spellfile.c, src/term.c, src/undo.c, src/vim9script.c
+
+Patch 8.2.4754
+Problem: Still using cached values after unsetting some known environment
+ variables.
+Solution: Take care of the side effects. (closes #10194)
+Files: src/evalfunc.c, src/evalvars.c, src/misc1.c, src/proto/misc1.pro,
+ src/vim9execute.c, src/optionstr.c, src/testdir/test_environ.vim
+
+Patch 8.2.4755
+Problem: Cannot use <SID>FuncRef in completion spec.
+Solution: Dereference a function name in another way. (closes #10197)
+Files: src/eval.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4756 (after 8.2.4754)
+Problem: Build error without the +eval feature.
+Solution: Adjust #ifdefs.
+Files: src/misc1.c
+
+Patch 8.2.4757
+Problem: List of libraries to suppress lsan errors is outdated.
+Solution: Add another library. (closes #10201)
+Files: src/testdir/lsan-suppress.txt
+
+Patch 8.2.4758
+Problem: When using an LSP channel want to get the message ID.
+Solution: Have ch_sendexpr() return the ID. (Yegappan Lakshmanan,
+ closes #10202)
+Files: runtime/doc/channel.txt, src/channel.c, src/evalfunc.c,
+ src/testdir/test_channel.vim
+
+Patch 8.2.4759
+Problem: CurSearch highlight does not work for multi-line match.
+Solution: Check cursor position before adjusting columns. (closes #10133)
+Files: src/structs.h, src/match.c, src/testdir/test_search.vim,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_1.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_2.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_3.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_4.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_multiple_line_5.dump
+
+Patch 8.2.4760
+Problem: Using matchfuzzy() on a long list can take a while.
+Solution: Add a limit to the number of matches. (Yasuhiro Matsumoto,
+ closes #10189)
+Files: runtime/doc/builtin.txt, src/search.c,
+ src/testdir/test_matchfuzzy.vim
+
+Patch 8.2.4761
+Problem: Documentation for using LSP messages is incomplete.
+Solution: Update the documentation. (Yegappan Lakshmanan, closes #10206)
+Files: runtime/doc/channel.txt
+
+Patch 8.2.4762
+Problem: Using freed memory when using synstack() and synID() in WinEnter.
+Solution: Check using the syntax window. (closes #10204)
+Files: src/syntax.c, src/testdir/test_syntax.vim
+
+Patch 8.2.4763
+Problem: Using invalid pointer with "V:" in Ex mode.
+Solution: Correctly handle the command being changed to "+".
+Files: src/ex_docmd.c, src/testdir/test_ex_mode.vim
+
+Patch 8.2.4764
+Problem: CI uses an older gcc version.
+Solution: Use GCC 11. (closes #10185)
+Files: .github/workflows/ci.yml, src/testdir/lsan-suppress.txt
+
+Patch 8.2.4765
+Problem: Function matchfuzzy() sorts too many items.
+Solution: Only put matches in the array. (Yegappan Lakshmanan,
+ closes #10208)
+Files: src/search.c
+
+Patch 8.2.4766
+Problem: KRL files using "deffct" not recognized.
+Solution: Adjust the pattern used for matching. (Patrick Meiser-Knosowski,
+ closes #10200)
+Files: runtime/autoload/dist/ft.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4767
+Problem: Openscad files are not recognized.
+Solution: Add a filetype pattern. (Niklas Adam, closes #10199)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4768
+Problem: CI: codecov upload sometimes does not work.
+Solution: Use action v3 instead of v2. (closes #10209)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4769
+Problem: Build warning with UCRT.
+Solution: Adjust #ifdef for _wenviron. (John Marriott)
+Files: src/evalfunc.c
+
+Patch 8.2.4770
+Problem: Cannot easily mix expression and heredoc.
+Solution: Support `=expr` in heredoc. (Yegappan Lakshmanan, closes #10138)
+Files: runtime/doc/eval.txt, src/evalvars.c, src/userfunc.c,
+ src/testdir/test_let.vim, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4771
+Problem: Coverity warns for not checking return value.
+Solution: Check return value of rettv_dict_alloc().
+Files: src/channel.c
+
+Patch 8.2.4772
+Problem: Old Coverity warning for not checking ftell() return value.
+Solution: Check return value of fseek() and ftell().
+Files: src/misc1.c
+
+Patch 8.2.4773
+Problem: Build failure without the +eval feature.
+Solution: Use other error message. Avoid warnings.
+Files: src/misc1.c, src/cindent.c, src/term.c
+
+Patch 8.2.4774
+Problem: Crash when using a number for lambda name.
+Solution: Check the type of the lambda reference.
+Files: src/eval.c, src/errors.h, src/testdir/test_lambda.vim
+
+Patch 8.2.4775
+Problem: SpellBad highlighting does not work in Konsole.
+Solution: Do not keep t_8u defined for Konsole. Redraw when t_8u is reset.
+ (closes #10177)
+Files: src/term.c
+
+Patch 8.2.4776
+Problem: GTK: 'lines' and 'columns' may change during startup.
+Solution: Ignore stale GTK resize events. (Ernie Rael, closes #10179)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.4777 (after 8.2.4775)
+Problem: Screendump tests fail because of a redraw.
+Solution: Do not output t_8u before receiving termresponse. Redraw only
+ when t_8u is not reset and termresponse is received.
+Files: src/term.c
+
+Patch 8.2.4778
+Problem: Pacman files use dosini filetype.
+Solution: Use conf instead. (Chaoren Lin, closes #10213)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4779
+Problem: lsan suppression is too version specific.
+Solution: Leave out the version number. (Christian Brabandt, closes #10214)
+Files: src/testdir/lsan-suppress.txt
+
+Patch 8.2.4780
+Problem: Parsing an LSP message fails when it is split.
+Solution: Collapse the received data before parsing. (Yegappan Lakshmanan,
+ closes #10215)
+Files: runtime/doc/channel.txt, src/channel.c,
+ src/testdir/test_channel.vim, src/testdir/test_channel_lsp.py
+
+Patch 8.2.4781
+Problem: Maxima files are not recognized.
+Solution: Add patterns to detect Maxima files. (Doron Behar, closes #10211)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4782
+Problem: Accessing freed memory.
+Solution: Clear evalarg after checking for trailing characters.
+ (issue #10218)
+Files: src/userfunc.c, src/testdir/test_lambda.vim
+
+Patch 8.2.4783
+Problem: Coverity warns for leaking memory.
+Solution: Use another strategy freeing "theline".
+Files: src/evalvars.c
+
+Patch 8.2.4784
+Problem: Lamba test with timer is flaky.
+Solution: Adjust sleep time on retry.
+Files: src/testdir/test_lambda.vim
+
+Patch 8.2.4785
+Problem: Visual mode not stopped early enough if win_gotoid() goes to
+ another buffer. (Sergey Vlasov)
+Solution: Stop Visual mode before jumping to another buffer. (closes #10217)
+Files: src/evalwindow.c, src/testdir/test_vim9_builtin.vim,
+ src/testdir/dumps/Test_win_gotoid_1.dump,
+ src/testdir/dumps/Test_win_gotoid_2.dump,
+ src/testdir/dumps/Test_win_gotoid_3.dump
+
+Patch 8.2.4786 (after 8.2.4785)
+Problem: Test for win_gotoid() in Visual mode fails on Mac.
+Solution: Skip the test on MacOS.
+Files: src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4787
+Problem: prop_find() does not find the right property.
+Solution: Fix the scan order. (closes #10220)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4788
+Problem: Large payload for LSP message not tested.
+Solution: Add a test with a large LSP payload. (Yegappan Lakshmanan,
+ closes #10223)
+Files: src/channel.c, src/testdir/test_channel.vim,
+ src/testdir/test_channel_lsp.py
+
+Patch 8.2.4789
+Problem: The cursor may be in the in wrong place when using :redraw while
+ editing the cmdline.
+Solution: When editing the command line let :redraw update the command line
+ too. (closes #10210)
+Files: src/ex_docmd.c, src/testdir/test_cmdline.vim,
+ src/testdir/dumps/Test_redraw_in_autocmd_1.dump,
+ src/testdir/dumps/Test_redraw_in_autocmd_2.dump
+
+Patch 8.2.4790
+Problem: Lilypond filetype not recognized.
+Solution: Add patterns for lilypond. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4791
+Problem: Autocmd events triggered in different order when reusing an empty
+ buffer.
+Solution: Call buff_freeall() earlier. (Charlie Groves, closes #10198)
+Files: src/buffer.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.4792
+Problem: Indent operator creates an undo entry for every line.
+Solution: Create one undo entry for all lines. (closes #10227)
+Files: src/indent.c, src/testdir/test_indent.vim
+
+Patch 8.2.4793
+Problem: Recognizing Maxima filetype even though it might be another.
+Solution: Remove *.mc and *.dem patterns from Maxima files
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4794
+Problem: Compiler warning for not initialized variable.
+Solution: Initialize the variable. (John Marriott)
+Files: src/indent.c
+
+Patch 8.2.4795
+Problem: 'cursorbind' scrolling depends on whether 'cursorline' is set.
+Solution: Always call validate_cursor(). (Christian Brabandt, closes #10230,
+ closes #10014)
+Files: src/move.c, src/testdir/README.txt,
+ src/testdir/test_cursorline.vim,
+ src/testdir/dumps/Test_hor_scroll_1.dump,
+ src/testdir/dumps/Test_hor_scroll_2.dump,
+ src/testdir/dumps/Test_hor_scroll_3.dump,
+ src/testdir/dumps/Test_hor_scroll_4.dump
+
+Patch 8.2.4796 (after 8.2.4795)
+Problem: File left behind after running cursorline tests.
+Solution: Uncomment the line that deletes the file.
+Files: src/testdir/test_cursorline.vim
+
+Patch 8.2.4797
+Problem: getwininfo() may get outdated values.
+Solution: Make sure w_botline is up-to-date. (closes #10226)
+Files: src/evalwindow.c, src/testdir/test_bufwintabinfo.vim
+
+Patch 8.2.4798
+Problem: t_8u option was reset even when set by the user.
+Solution: Only reset t_8u when using the default value. (closes #10239)
+Files: src/term.c
+
+Patch 8.2.4799
+Problem: Popup does not use correct topline.
+Solution: Also add one when firstline is negative. (closes #10229)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.4800 (after 8.2.4798)
+Problem: Missing test update for adjusted t_8u behavior.
+Solution: Update and extend the test.
+Files: src/testdir/test_termcodes.vim
+
+Patch 8.2.4801 (after 8.2.4795)
+Problem: Fix for cursorbind fix not fully tested.
+Solution: Add another test case. (Christian Brabandt, closes #10240)
+Files: src/testdir/test_cursorline.vim,
+ src/testdir/dumps/Test_hor_scroll_5.dump
+
+Patch 8.2.4802
+Problem: Test is not cleaned up.
+Solution: Make test clean up after itself. Avoid NUL. (closes #10233)
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.4803
+Problem: WinScrolled not always triggered when scrolling with the mouse.
+Solution: Add calls to may_trigger_winscrolled(). (closes #10246)
+Files: src/mouse.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.4804
+Problem: Expression in heredoc doesn't work for compiled function.
+Solution: Implement compiling the heredoc expressions. (Yegappan Lakshmanan,
+ closes #10232)
+Files: runtime/doc/eval.txt, src/evalvars.c, src/proto/evalvars.pro,
+ src/ex_getln.c, src/vim9compile.c, src/proto/vim9compile.pro,
+ src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4805
+Problem: CurSearch used for all matches in current line.
+Solution: Don't use the non-zero line count. (closes #10247)
+Files: src/match.c, src/testdir/test_search.vim,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_1.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_2.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_2a.dump,
+ src/testdir/dumps/Test_hlsearch_cursearch_single_line_2b.dump
+
+Patch 8.2.4806
+Problem: A mapping using <LeftDrag> does not start Select mode.
+Solution: When checking for starting select mode with the mouse also do this
+ when there is typeahead. (closes #10249)
+Files: src/normal.c
+
+Patch 8.2.4807
+Problem: Processing key events in Win32 GUI is not ideal.
+Solution: Improve processing of key events. (closes #10155)
+Files: src/gui_w32.c
+
+Patch 8.2.4808
+Problem: Unused item in engine struct.
+Solution: Remove "expr". Add comment with tags.
+Files: src/regexp.h
+
+Patch 8.2.4809
+Problem: Various things not properly tested.
+Solution: Add various test cases. (Yegappan Lakshmanan, closes #10259)
+Files: src/testdir/test_blob.vim, src/testdir/test_debugger.vim,
+ src/testdir/test_listdict.vim, src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_import.vim, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4810 (after 8.2.4808)
+Problem: Missing changes in one file.
+Solution: Also change the struct initializers.
+Files: src/regexp.c
+
+Patch 8.2.4811 (after 8.2.4807)
+Problem: Win32 GUI: caps lock doesn't work.
+Solution: Handle VK_CAPITAL. (closes #10260, closes #10258)
+Files: src/gui_w32.c
+
+Patch 8.2.4812
+Problem: Unused struct item.
+Solution: Remove "lines" match_T. Simplify the code. (closes #10256)
+Files: src/match.c, src/structs.h
+
+Patch 8.2.4813
+Problem: Pasting text while indent folding may mess up folds.
+Solution: Adjust the way folds are split. (Brandon Simmons, closes #10254)
+Files: src/fold.c, src/testdir/test_fold.vim
+
+Patch 8.2.4814
+Problem: Possible to leave a popup window with win_gotoid().
+Solution: Give an error when trying to leave a popup window with
+ win_gotoid(). (closes #10253)
+Files: src/evalwindow.c, src/testdir/test_terminal3.vim
+
+Patch 8.2.4815 (after 8.2.4776)
+Problem: Cannot build with older GTK version.
+Solution: Use gtk_window_get_size() instead of gdk_window_get_width() and
+ gdk_window_get_height(). (Ernie Rael, closes #10257)
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.4816
+Problem: Still using older codecov app in some places of CI.
+Solution: Use v3.1.0. (closes #10209)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4817
+Problem: Win32 GUI: modifiers are not always used.
+Solution: Handle more modifiers. (closes #10269)
+Files: src/gui_w32.c
+
+Patch 8.2.4818 (after 8.2 4806)
+Problem: No test for what 8.2.4806 fixes.
+Solution: Add a test. (closes #10272)
+Files: src/testdir/test_mapping.vim
+
+Patch 8.2.4819
+Problem: Unmapping simplified keys also deletes other mapping.
+Solution: Only unmap a mapping with m_simplified set. (closes #10270)
+Files: src/map.c, src/testdir/test_mapping.vim
+
+Patch 8.2.4820
+Problem: No simple programmatic way to find a specific mapping.
+Solution: Add getmappings(). (Ernie Rael, closes #10273)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/map.c, src/proto/map.pro, src/testdir/test_maparg.vim
+
+Patch 8.2.4821
+Problem: Crash when imported autoload script was deleted.
+Solution: Initialize local variable. (closes #10274) Give a more meaningful
+ error message.
+Files: src/eval.c, src/vim9script.c, src/testdir/test_vim9_import.vim
+
+Patch 8.2.4822
+Problem: Setting ufunc to NULL twice.
+Solution: Set ufunc to NULL in find_exported(). (closes #19275)
+Files: src/eval.c, src/vim9script.c
+
+Patch 8.2.4823
+Problem: Concatenating more than 2 strings in a :def function is
+ inefficient.
+Solution: Add a count to the CONCAT instruction. (closes #10276)
+Files: src/vim9.h, src/vim9cmds.c, src/vim9compile.c, src/vim9execute.c,
+ src/vim9expr.c, src/vim9instr.c, src/proto/vim9instr.pro,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4824
+Problem: Expression is evaluated multiple times.
+Solution: Evaluate expression once and store the result. (closes #10278)
+Files: src/map.c
+
+Patch 8.2.4825
+Problem: Can only get a list of mappings.
+Solution: Add the optional {abbr} argument. (Ernie Rael, closes #10277)
+ Rename to maplist(). Rename test file.
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/map.c, src/proto/map.pro, src/testdir/test_maparg.vim,
+ src/testdir/test_map_functions.vim, src/testdir/Make_all.mak
+
+Patch 8.2.4826
+Problem: .cshtml files are not recognized.
+Solution: Use html filetype for .cshtml files. (Julien Voisin, closes #10212)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4827
+Problem: Typo in variable name. (Gabriel Dupras)
+Solution: Rename the variable.
+Files: src/map.c
+
+Patch 8.2.4828
+Problem: Fix for unmapping simplified key not fully tested.
+Solution: Add a test case. (closes #10292)
+Files: src/map.c, src/testdir/test_mapping.vim
+
+Patch 8.2.4829
+Problem: A key may be simplified to NUL.
+Solution: Use K_ZERO instead. Use macros instead of hard coded values.
+ (closes #10290)
+Files: src/getchar.c, src/misc2.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.4830
+Problem: Possible endless loop if there is unused typeahead.
+Solution: Only loop when the typeahead changed.
+Files: src/channel.c
+
+Patch 8.2.4831
+Problem: Crash when using maparg() and unmapping simplified keys.
+Solution: Do not keep a mapblock pointer. (closes #10294)
+Files: src/map.c, src/testdir/test_map_functions.vim
+
+Patch 8.2.4832
+Problem: Passing zero instead of NULL to a pointer argument.
+Solution: Use NULL. (closes #10296)
+Files: src/getchar.c, src/term.c
+
+Patch 8.2.4833
+Problem: Failure of mapping not checked for.
+Solution: Check return value of ins_typebuf(). (closes #10299)
+Files: src/getchar.c, src/term.c, src/testdir/test_termcodes.vim
+
+Patch 8.2.4834
+Problem: Vim9: some lines not covered by tests.
+Solution: Add a few more tests. Remove dead code.
+Files: src/vim9execute.c, src/vim9instr.c, src/vim9.h,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4835
+Problem: Vim9: some lines not covered by tests.
+Solution: Add a few more tests. Fix disassemble output.
+Files: src/vim9execute.c, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4836
+Problem: Vim9: some lines not covered by tests.
+Solution: Remove dead code. Add disassemble tests.
+Files: src/vim9execute.c, src/vim9.h,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4837 (after patch 8.2.0919)
+Problem: Modifiers not simplified when timed out or using feedkeys() with
+ 'n" flag.
+Solution: Adjust how mapped flag and timeout are used. (closes #10305)
+Files: src/getchar.c, src/testdir/test_paste.vim,
+ src/testdir/test_termcodes.vim
+
+Patch 8.2.4838
+Problem: Checking for absolute path is not trivial.
+Solution: Add isabsolutepath(). (closes #10303)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/filepath.c, src/proto/filepath.pro,
+ src/testdir/test_functions.vim
+
+Patch 8.2.4839
+Problem: Compiler warning for unused argument.
+Solution: Add "UNUSED".
+Files: src/gui_gtk_x11.c
+
+Patch 8.2.4840
+Problem: Heredoc expression evaluated even when skipping.
+Solution: Don't evaluate when "skip" is set. (closes #10306)
+Files: src/evalvars.c, src/testdir/test_let.vim
+
+Patch 8.2.4841
+Problem: Empty string considered an error for expand() when 'verbose' is
+ set. (Christian Brabandt)
+Solution: Do not give an error for an empty result. (closes #10307)
+Files: src/evalfunc.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/filepath.c, src/testdir/test_expand_func.vim
+
+Patch 8.2.4842 (after 8.2.4841)
+Problem: expand("%:p") is not empty when there is no buffer name.
+Solution: When ignoring errors still return NULL. (closes #10311)
+Files: src/ex_docmd.c, src/testdir/test_expand_func.vim
+
+Patch 8.2.4843 (after 8.2.4807)
+Problem: Win32 GUI: Treating CTRL + ALT as AltGr is not backwards
+ compatible. (Axel Bender)
+Solution: Make a difference between left and right menu keys.
+ (closes #10308)
+Files: src/gui_w32.c
+
+Patch 8.2.4844
+Problem: <C-S-I> is simplified to <S-Tab>.
+Solution: Do not simplify CTRL if there is also SHIFT. (closes #10313)
+Files: src/getchar.c, src/testdir/test_gui.vim
+
+Patch 8.2.4845
+Problem: Duplicate code.
+Solution: Move code below if/else. (closes #10314)
+Files: src/misc1.c
+
+Patch 8.2.4846 (after 8.2.4844)
+Problem: Termcodes test fails.
+Solution: use CTRL-SHIFT-V to insert an unsimplified key. (closes #10316)
+Files: runtime/doc/cmdline.txt, src/edit.c, src/getchar.c,
+ src/testdir/test_gui.vim
+
+Patch 8.2.4847
+Problem: Crash when using uninitialized function pointer.
+Solution: Check for NULL pointer. (closes #10319, closes #10319)
+Files: src/eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4848
+Problem: Local completion with mappings and simplification not working.
+Solution: Fix local completion <C-N>/<C-P> mappings not ignored if keys are
+ not simplified. (closes #10323)
+Files: src/getchar.c, src/testdir/test_popup.vim
+
+Patch 8.2.4849
+Problem: Gleam filetype not detected.
+Solution: Add a pattern for Gleam files. (Mathias Jean Johansen,
+ closes #10326)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4850
+Problem: Mksession mixes up "tabpages" and "curdir" arguments.
+Solution: Correct logic for storing tabpage in session. (closes #10312)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.4851
+Problem: Compiler warning for uninitialized variable.
+Solution: Use another variable to decide to restore option values.
+Files: src/session.c
+
+Patch 8.2.4852
+Problem: ANSI color index to RGB value not correct.
+Solution: Convert the cterm index to ANSI index. (closes #10321,
+ closes #9836)
+Files: src/term.c
+
+Patch 8.2.4853
+Problem: CI with FreeBSD is a bit outdated.
+Solution: Use 12.3 instead of 12.1. (closes #10333)
+Files: .cirrus.yml
+
+Patch 8.2.4854
+Problem: Array size does not match usage.
+Solution: Make array size 3 instead of 4. (Christian Brabandt, closes #10336)
+Files: src/term.c
+
+Patch 8.2.4855
+Problem: Robot files are not recognized.
+Solution: Add patterns for robot files. (Zoe Roux, closes #10339)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4856
+Problem: MinGW compiler complains about unknown escape sequence.
+Solution: Avoid using a backslash in path. (Christian Brabandt,
+ closes #10337)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.4857
+Problem: Yaml indent for multiline is wrong.
+Solution: Adjust patterns. (closes #10328, closes #8740)
+Files: runtime/indent/yaml.vim, runtime/indent/testdir/yaml.in,
+ runtime/indent/testdir/yaml.ok
+
+Patch 8.2.4858
+Problem: K_SPECIAL may be escaped twice.
+Solution: Avoid double escaping. (closes #10340)
+Files: src/highlight.c, src/misc2.c, src/proto/misc2.pro, src/term.c,
+ src/typval.c, src/testdir/test_eval_stuff.vim,
+ src/testdir/test_feedkeys.vim, src/testdir/test_functions.vim,
+ src/testdir/test_mapping.vim
+
+Patch 8.2.4859
+Problem: wget2 files are not recognized.
+Solution: Add patterns to recognize wget2. (Doug Kearns)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.4860
+Problem: MS-Windows: always uses current directory for executables.
+Solution: Check the NoDefaultCurrentDirectoryInExePath environment variable.
+ (Yasuhiro Matsumoto, closes #10341)
+Files: runtime/doc/builtin.txt, src/os_win32.c,
+ src/testdir/test_functions.vim
+
+Patch 8.2.4861
+Problem: It is not easy to restore saved mappings.
+Solution: Make mapset() accept a dict argument. (Ernie Rael, closes #10295)
+Files: runtime/doc/builtin.txt, src/errors.h, src/evalfunc.c, src/map.c,
+ src/typval.c, src/proto/typval.pro,
+ src/testdir/test_map_functions.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4862
+Problem: Vim9: test may fail when run with valgrind.
+Solution: Wait longer for callback if needed.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.4863
+Problem: Accessing freed memory in test without the +channel feature.
+ (Dominique Pellé)
+Solution: Do not generate PUSHCHANNEL or PUSHJOB if they are not
+ implemented. (closes #10350)
+Files: src/vim9instr.c, src/errors.h, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim
+
+Patch 8.2.4864 (after 8.2.4863)
+Problem: Vim9: script test fails.
+Solution: Remove "if" around declaration.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.4865
+Problem: :startinsert right after :stopinsert does not work when popup menu
+ is still visible.
+Solution: Use ins_compl_active() instead of pum_visible(). (closes #10352)
+Files: src/edit.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.4866
+Problem: Duplicate code in "get" functions.
+Solution: Use get_var_from() for getwinvar(), gettabvar(), gettabwinvar()
+ and getbufvar(). (closes #10335)
+Files: src/evalvars.c
+
+Patch 8.2.4867
+Problem: Listing of mapping with K_SPECIAL is wrong.
+Solution: Adjust escaping of special characters. (closes #10351)
+Files: src/map.c, src/message.c, src/testdir/test_mapping.vim
+
+Patch 8.2.4868
+Problem: When closing help window autocmds triggered for the wrong window.
+Solution: Figure out the new current window earlier. (closes #10348)
+Files: src/window.c, src/testdir/test_help.vim
+
+Patch 8.2.4869
+Problem: Expression in command block does not look after NL.
+Solution: Skip over NL to check what follows. (closes #10358)
+Files: src/eval.c, src/proto/eval.pro, src/vim9script.c,
+ src/testdir/test_usercommands.vim
+
+Patch 8.2.4870
+Problem: Vim9: expression in :substitute is not compiled.
+Solution: Use an INSTR instruction if possible. (closes #10334)
+Files: src/evalfunc.c, src/regexp.c, src/vim9execute.c, src/vim9expr.c,
+ src/testdir/test_vim9_builtin.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4871
+Problem: Vim9: in :def function no error for using a range with a command
+ that does not accept one.
+Solution: Check for the command to accept a range. (closes #10330)
+Files: src/vim9compile.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4872
+Problem: Vim9: no error for using an expression only at the script level
+ when followed by an empty line.
+Solution: Do not check the line number but whether something follows.
+ (closes #10357)
+Files: src/ex_eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4873
+Problem: Vim9: using "else" differs from using "endif/if !cond".
+Solution: Leave the block and enter another one. (closes #10320)
+Files: src/ex_eval.c, src/testdir/test_vim9_script.vim
+
+Patch 8.2.4874
+Problem: Win32 GUI: horizontal scroll wheel not handled properly.
+Solution: Also handle WM_MOUSEHWHEEL. (closes #10309)
+Files: src/gui_w32.c
+
+Patch 8.2.4875
+Problem: MS-Windows: some .exe files are not recognized.
+Solution: Parse APPEXECLINK junctions. (closes #10302)
+Files: src/os_mswin.c, src/proto/os_mswin.pro, src/os_win32.c,
+ src/os_win32.h, src/testdir/test_functions.vim
+
+Patch 8.2.4876
+Problem: MS-Windows: Shift-BS results in strange character in powershell.
+Solution: Add K_S_BS. (Christian Brabandt, closes #10283, closes #10279)
+Files: src/edit.c, src/keymap.h, src/term.c, src/testdir/shared.vim,
+ src/testdir/test_edit.vim
+
+Patch 8.2.4877
+Problem: MS-Windows: Using Normal colors for termguicolors causes problems.
+Solution: Do not use Normal colors to set sg_gui_fg and sg_gui_bg.
+ (Christian Brabandt, closes #10317, closes #10241)
+Files: src/highlight.c
+
+Patch 8.2.4878
+Problem: Valgrind warning for using uninitialized variable.
+Solution: Initialize the type of newtv.
+Files: src/strings.c
+
+Patch 8.2.4879
+Problem: Screendump test may fail when using valgrind.
+Solution: Wait longer for the first screendump.
+Files: src/testdir/test_vim9_builtin.vim, src/testdir/screendump.vim
+
+Patch 8.2.4880
+Problem: Vim9: misplaced elseif causes invalid memory access.
+Solution: Check cs_idx not to be negative.
+Files: src/ex_eval.c
+
+Patch 8.2.4881
+Problem: "P" in Visual mode still changes some registers.
+Solution: Make "P" in Visual mode not change any register. (Shougo
+ Matsushita, closes #10349)
+Files: runtime/doc/change.txt, runtime/doc/index.txt,
+ runtime/doc/visual.txt, src/normal.c, src/testdir/test_visual.vim
+
+Patch 8.2.4882
+Problem: Cannot make 'breakindent' use a specific column.
+Solution: Add the "column" entry in 'breakindentopt'. (Christian Brabandt,
+ closes #10362, closes #10325)
+Files: runtime/doc/options.txt, src/indent.c, src/structs.h,
+ src/testdir/test_breakindent.vim
+
+Patch 8.2.4883
+Problem: String interpolation only works in heredoc.
+Solution: Support interpolated strings. Use syntax for heredoc consistent
+ with strings, similar to C#. (closes #10327)
+Files: runtime/doc/eval.txt, src/errors.h, src/eval.c, src/evalvars.c,
+ src/proto/evalvars.pro, src/typval.c, src/proto/typval.pro,
+ src/vim9compile.c, src/proto/vim9compile.pro, src/vim9expr.c,
+ src/testdir/test_debugger.vim, src/testdir/test_expr.vim,
+ src/testdir/test_let.vim, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4884
+Problem: Test fails without the job/channel feature. (Dominique Pellé)
+Solution: Add condition.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.4885 (after 8.2.4884)
+Problem: Test fails with the job/channel feature.
+Solution: Move check for job/channel separately.
+Files: src/testdir/test_vim9_script.vim
+
+Patch 8.2.4886
+Problem: Vim9: redir in skipped block seen as assignment.
+Solution: Check for valid assignment.
+Files: src/ex_docmd.c, src/testdir/test_vim9_assign.vim
+
+Patch 8.2.4887
+Problem: Channel log does not show invoking a timer callback.
+Solution: Add a ch_log() call.
+Files: src/time.c
+
+Patch 8.2.4888
+Problem: Line number of lambda ignores line continuation.
+Solution: Use the line number of where the arguments are. Avoid outputting
+ "..." twice. (closes #10364)
+Files: src/userfunc.c
+
+Patch 8.2.4889
+Problem: CI only tests with FreeBSD 12.
+Solution: Also test with FreeBSD 13. (closes #10366)
+Files: .cirrus.yml
+
+Patch 8.2.4890
+Problem: Inconsistent capitalization in error messages.
+Solution: Make capitalization consistent. (Doug Kearns)
+Files: src/errors.h
+
+Patch 8.2.4891
+Problem: Vim help presentation could be better.
+Solution: Add an imported file for extra Vim help support. Show highlight
+ names in the color they have.
+Files: Filelist, runtime/import/dist/vimhelp.vim
+
+Patch 8.2.4892
+Problem: Test failures because of changed error messages.
+Solution: Adjust the expected error messages.
+Files: src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_func.vim, src/testdir/test_vim9_script.vim,
+ src/testdir/test_expand.vim, src/testdir/test_tcl.vim,
+ src/testdir/test_vimscript.vim
+
+Patch 8.2.4893 (after 8.2.4891)
+Problem: Distributed import files are not installed.
+Solution: Add rules to Makefile and NSIS.
+Files: src/Makefile, nsis/gvim.nsi
+
+Patch 8.2.4894
+Problem: MS-Windows: not using italics.
+Solution: Use italics. Simplify the code. (closes #10359)
+Files: src/term.c
+
+Patch 8.2.4895
+Problem: Buffer overflow with invalid command with composing chars.
+Solution: Check that the whole character fits in the buffer.
+Files: src/ex_docmd.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4896 (after 8.2.4869)
+Problem: Expression in command block does not look after NL when command is
+ typed.
+Solution: Skip over NL also when not in a script. (closes #10358)
+Files: src/eval.c, src/testdir/test_usercommands.vim
+
+Patch 8.2.4897
+Problem: Comment inside an expression in lambda ignores the rest of the
+ expression.
+Solution: Truncate the line at the comment. (closes #10367)
+Files: src/eval.c, src/testdir/test_lambda.vim
+
+Patch 8.2.4898
+Problem: Coverity complains about pointer usage.
+Solution: Move code for increment/decrement.
+Files: src/vim9compile.c
+
+Patch 8.2.4899
+Problem: With latin1 encoding CTRL-W might go before the start of the
+ command line.
+Solution: Check already being at the start of the command line.
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4900
+Problem: Vim9 expression test fails without the job feature.
+Solution: Add a check for the job feature. (Dominique Pellé, closes #10373)
+Files: src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4901
+Problem: NULL pointer access when using invalid pattern.
+Solution: Check for failed regexp program.
+Files: src/buffer.c, src/testdir/test_buffer.vim
+
+Patch 8.2.4902
+Problem: Mouse wheel scrolling is inconsistent.
+Solution: Use the MS-Windows system setting. (closes #10368)
+Files: runtime/doc/scroll.txt, src/gui_w32.c, src/mouse.c,
+ src/proto/mouse.pro, src/testing.c, src/testdir/test_gui.vim
+
+Patch 8.2.4903
+Problem: Cannot get the current cmdline completion type and position.
+Solution: Add getcmdcompltype() and getcmdscreenpos(). (Shougo Matsushita,
+ closes #10344)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/cmdexpand.c,
+ src/proto/cmdexpand.pro, src/evalfunc.c, src/ex_getln.c,
+ src/proto/ex_getln.pro, src/usercmd.c, src/proto/usercmd.pro,
+ src/testdir/test_cmdline.vim
+
+Patch 8.2.4904
+Problem: codecov includes MS-Windows install files.
+Solution: Ignore dosinst.c and uninstall.c.
+Files: .codecov.yml
+
+Patch 8.2.4905
+Problem: codecov includes MS-Windows install header file.
+Solution: Ignore dosinst.h.
+Files: .codecov.yml
+
+Patch 8.2.4906
+Problem: MS-Windows: cannot use transparent background.
+Solution: Make transparent background work with 'termguicolors' and NONE
+ background color. (Yasuhiro Matsumoto, closes #10310, closes #7162)
+Files: runtime/doc/options.txt, src/os_win32.c, src/term.c
+
+Patch 8.2.4907
+Problem: Some users do not want a line comment always inserted.
+Solution: Add the '/' flag to 'formatoptions' to not repeat the comment
+ leader after a statement when using "o".
+Files: runtime/doc/change.txt, src/option.h, src/change.c,
+ src/testdir/test_textformat.vim
+
+Patch 8.2.4908
+Problem: No text formatting for // comment after a statement.
+Solution: format a comment when the 'c' flag is in 'formatoptions'.
+Files: src/textformat.c, src/testdir/test_textformat.vim
+
+Patch 8.2.4909
+Problem: MODE_ enum entries names are too generic.
+Solution: use CH_MODE_.
+Files: src/structs.h, src/channel.c, src/job.c, src/terminal.c
+
+Patch 8.2.4910
+Problem: Imperfect coding.
+Solution: Make code nicer.
+Files: src/ex_getln.c
+
+Patch 8.2.4911
+Problem: The mode #defines are not clearly named.
+Solution: Prepend MODE_. Renumber them to put the mapped modes first.
+Files: src/vim.h, src/autocmd.c, src/buffer.c, src/change.c,
+ src/charset.c, src/cindent.c, src/clipboard.c, src/debugger.c,
+ src/digraph.c, src/drawline.c, src/drawscreen.c, src/edit.c,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
+ src/fileio.c, src/fold.c, src/getchar.c, src/globals.h, src/gui.c,
+ src/gui_gtk.c, src/gui_w32.c, src/gui_xim.c, src/indent.c,
+ src/insexpand.c, src/macros.h, src/main.c, src/map.c, src/menu.c,
+ src/message.c, src/misc1.c, src/misc2.c, src/mouse.c,
+ src/netbeans.c, src/normal.c, src/ops.c, src/option.c,
+ src/os_unix.c, src/os_win32.c, src/popupmenu.c, src/search.c,
+ src/tag.c, src/screen.c, src/term.c, src/terminal.c,
+ src/textformat.c, src/window.c
+
+Patch 8.2.4912
+Problem: Using execute() to define a lambda doesn't work. (Ernie Rael)
+Solution: Put the getline function in evalarg. (closes #10375)
+Files: src/eval.c, src/evalfunc.c, src/proto/evalfunc.pro,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.4913
+Problem: Popup_hide() does not always have effect.
+Solution: Add the POPF_HIDDEN_FORCE flag. (closes #10376)
+Files: src/popupwin.c, src/vim.h, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popup_prop_not_visible_01a.dump,
+ src/testdir/dumps/Test_popup_prop_not_visible_01b.dump
+
+Patch 8.2.4914
+Problem: String interpolation in :def function may fail.
+Solution: Do not terminate the expression. (closes #10377)
+Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4915
+Problem: Sometimes the cursor is in the wrong position.
+Solution: When the cursor moved to another line, recompute w_botline.
+ (closes #9736)
+Files: src/move.c
+
+Patch 8.2.4916 (after 8.2.4915)
+Problem: Mouse in Insert mode test fails.
+Solution: Fix the test and check relevant positions.
+Files: src/testdir/test_edit.vim
+
+Patch 8.2.4917
+Problem: Fuzzy expansion of option names is not right.
+Solution: Pass the fuzzy flag down the call chain. (Christian Brabandt,
+ closes #10380, closes #10318)
+Files: src/cmdexpand.c, src/option.c, src/proto/option.pro,
+ src/testdir/test_options.vim
+
+Patch 8.2.4918
+Problem: Conceal character from matchadd() displayed too many times.
+Solution: Check the syntax flag. (closes #10381, closes #7268)
+Files: src/drawline.c, src/testdir/test_matchadd_conceal.vim
+
+Patch 8.2.4919
+Problem: Can add invalid bytes with :spellgood.
+Solution: Check for a valid word string.
+Files: src/mbyte.c, src/spellfile.c, src/errors.h,
+ src/testdir/test_spell_utf8.vim
+
+Patch 8.2.4920 (after 8.2.4902)
+Problem: MS-Windows GUI: unused variables.
+Solution: Delete the variables. (John Marriott)
+Files: src/gui_w32.c
+
+Patch 8.2.4921
+Problem: Spell test fails because of new illegal byte check.
+Solution: Remove the test.
+Files: src/testdir/test_spell.vim
+
+Patch 8.2.4922 (after 8.2.4916)
+Problem: Mouse test fails on MS-Windows.
+Solution: Set 'mousemodel' to "extend".
+Files: src/testdir/test_edit.vim
+
+Patch 8.2.4923
+Problem: Test checks for terminal feature unnecessarily.
+Solution: Remove CheckRunVimInTerminal. (closes #10383)
+Files: src/testdir/test_matchadd_conceal.vim
+
+Patch 8.2.4924
+Problem: maparg() may return a string that cannot be reused.
+Solution: use msg_outtrans_special() instead of str2special().
+ (closes #10384)
+Files: src/message.c, src/option.c, src/testdir/test_map_functions.vim,
+ src/testdir/test_mapping.vim, src/testdir/test_options.vim
+
+Patch 8.2.4925
+Problem: Trailing backslash may cause reading past end of line.
+Solution: Check for NUL after backslash.
+Files: src/textobject.c, src/testdir/test_textobjects.vim
+
+Patch 8.2.4926
+Problem: #ifdef for crypt feature around too many lines.
+Solution: Move code outside of #ifdef. (closes #10388)
+Files: src/option.c
+
+Patch 8.2.4927
+Problem: Return type of remove() incorrect when using three arguments.
+Solution: Use first argument type when there are three arguments.
+ (closes #10387)
+Files: src/evalfunc.c, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4928
+Problem: Various white space and cosmetic mistakes.
+Solution: Change spaces to tabs, improve comments.
+Files: src/bufwrite.c, src/channel.c, src/cindent.c, src/crypt.c,
+ src/debugger.c, src/digraph.c, src/edit.c, src/evalwindow.c,
+ src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c, src/fileio.c,
+ src/filepath.c, src/gui.c, src/highlight.c, src/indent.c,
+ src/insexpand.c, src/job.c, src/keymap.h, src/macros.h,
+ src/menu.c, src/misc1.c, src/misc2.c, src/mouse.c, src/move.c,
+ src/normal.c, src/ops.c, src/option.c, src/option.h, src/search.c,
+ src/session.c, src/spellsuggest.c, src/structs.h, src/tag.c,
+ src/term.c, src/terminal.c, src/textformat.c, src/typval.c,
+ src/ui.c, src/userfunc.c, src/vim.h, src/vim9.h,
+ src/vim9compile.c, src/vim9execute.c, src/window.c,
+ src/testdir/test_cursorline.vim, src/os_unix.c, src/if_lua.c,
+ src/if_py_both.h, src/os_amiga.c, src/os_win32.c, src/os_mswin.c,
+ src/os_vms.c, src/os_vms_conf.h
+
+Patch 8.2.4929
+Problem: Off-by-one error in statusline item.
+Solution: Subtrace one less. (closes #10394, closes #5599)
+Files: src/buffer.c, src/testdir/test_statusline.vim,
+ src/testdir/dumps/Test_statusline_hl.dump
+
+Patch 8.2.4930
+Problem: Interpolated string expression requires escaping.
+Solution: Do not require escaping in the expression.
+Files: runtime/doc/eval.txt, src/typval.c, src/proto/typval.pro,
+ src/dict.c, src/eval.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/vim9compile.c, src/proto/vim9compile.pro, src/vim9expr.c,
+ src/vim9instr.c, src/alloc.c, src/proto/alloc.pro,
+ src/testdir/test_expr.vim, src/testdir/test_let.vim
+
+Patch 8.2.4931
+Problem: Crash with sequence of Perl commands.
+Solution: Move PUTBACK to another line. (closes #10386)
+Files: src/if_perl.xs
+
+Patch 8.2.4932
+Problem: Not easy to filter the output of maplist().
+Solution: Add mode_bits to the dictionary. (Ernie Rael, closes #10356)
+Files: runtime/doc/builtin.txt, src/map.c,
+ src/testdir/test_map_functions.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4933
+Problem: A few more capitalization mistakes in error messages.
+Solution: Adjust capitalization. (Doug Kearns)
+Files: src/errors.h
+
+Patch 8.2.4934
+Problem: String interpolation fails when not evaluating.
+Solution: Skip the expression when not evaluating. (closes #10398)
+Files: src/typval.c, src/evalvars.c, src/proto/evalvars.pro,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4935
+Problem: With 'foldmethod' "indent" some lines are not included in the
+ fold. (Oleg Koshovetc)
+Solution: Fix it. (Brandon Simmons, closes #10399, closes #3214)
+Files: src/fold.c, src/testdir/test_fold.vim
+
+Patch 8.2.4936
+Problem: MS-Windows: mouse coordinates for scroll event are wrong.
+Solution: Convert coordinates to the text area coordinates. (closes #10400)
+Files: src/gui_w32.c
+
+Patch 8.2.4937 (after 8.2.4931)
+Problem: No test for what 8.2.4931 fixes.
+Solution: Add a test that triggers a valgrind error.
+Files: src/testdir/test_perl.vim
+
+Patch 8.2.4938
+Problem: Crash when matching buffer with invalid pattern.
+Solution: Check for NULL regprog.
+Files: src/buffer.c, src/testdir/test_buffer.vim
+
+Patch 8.2.4939
+Problem: matchfuzzypos() with "matchseq" does not have all positions.
+Solution: Also add a position for white space. (closes #10404)
+Files: runtime/doc/builtin.txt, src/search.c,
+ src/testdir/test_matchfuzzy.vim
+
+Patch 8.2.4940
+Problem: Some code is never used.
+Solution: Remove dead code. Add a few more test cases.
+Files: src/vim9expr.c, src/proto/vim9expr.pro, src/vim9compile.c,
+ src/testdir/test_vim9_builtin.vim, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4941
+Problem: '[ and '] marks may be wrong after undo.
+Solution: Adjust the '[ and '] marks if needed. (closes #10407, closes #1281)
+Files: src/undo.c, src/testdir/test_undo.vim
+
+Patch 8.2.4942
+Problem: Error when setting 'filetype' in help file again.
+Solution: Deal with text property type already existing. (closes #10409)
+Files: runtime/import/dist/vimhelp.vim
+
+Patch 8.2.4943
+Problem: Changing 'switchbuf' may have no effect.
+Solution: Handle 'switchbuf' in didset_string_options(). (Sean Dewar,
+ closes #10406)
+Files: src/optionstr.c, src/testdir/test_options.vim
+
+Patch 8.2.4944
+Problem: Text properties are wrong after "cc". (Axel Forsman)
+Solution: Pass the deleted byte count to inserted_bytes(). (closes #10412,
+ closes #7737, closes #5763)
+Files: src/change.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4945
+Problem: Inconsistent use of white space.
+Solution: Use Tabs and Spaces consistently.
+Files: src/os_amiga.c, src/if_py_both.h, src/os_win32.c, src/os_mswin.c,
+ src/os_vms.c, src/os_vms_conf.h
+
+Patch 8.2.4946
+Problem: Vim9: some code not covered by tests.
+Solution: Add a few more test cases. Remove dead code.
+Files: src/vim9expr.c, src/testdir/test_vim9_expr.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4947
+Problem: Text properties not adjusted when accepting spell suggestion.
+Solution: Adjust text properties when text changes. (closes #10414)
+Files: src/spell.c, src/spellsuggest.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4948
+Problem: Cannot use Perl heredoc in nested :def function. (Virginia
+ Senioria)
+Solution: Only concatenate heredoc lines when not in a nested function.
+ (closes #10415)
+Files: src/userfunc.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4949
+Problem: Vim9: some code not covered by tests.
+Solution: Add a few more test cases. Fix double error message.
+Files: src/vim9expr.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4950
+Problem: Text properties position wrong after shifting text.
+Solution: Adjust the text properties when shifting a block of text.
+ (closes #10418)
+Files: src/ops.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4951
+Problem: Smart indenting done when not enabled.
+Solution: Check option values before setting can_si. (closes #10420)
+Files: src/indent.c, src/proto/indent.pro, src/change.c, src/edit.c,
+ src/ops.c, src/testdir/test_smartindent.vim
+
+Patch 8.2.4952
+Problem: GUI test will fail if color scheme changes.
+Solution: Reduce the test for now.
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.4953
+Problem: With 'smartindent' inserting '}' after completion goes wrong.
+Solution: Check the cursor is in indent. (closes #10420)
+Files: src/indent.c, src/testdir/test_smartindent.vim
+
+Patch 8.2.4954
+Problem: Inserting line breaks text property spanning more than one line.
+Solution: Check TP_FLAG_CONT_PREV and TP_FLAG_CONT_NEXT. (closes #10423)
+Files: src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4955
+Problem: Text property in wrong position after auto-indent.
+Solution: Adjust text property columns. (closes #10422, closes #7719)
+Files: src/change.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4956
+Problem: Reading past end of line with "gf" in Visual block mode.
+Solution: Do not include the NUL in the length.
+Files: src/normal.c, src/testdir/test_gf.vim
+
+Patch 8.2.4957
+Problem: Text properties in a wrong position after a block change.
+Solution: Adjust the properties columns. (closes #10427)
+Files: src/ops.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4958
+Problem: A couple conditions are always true.
+Solution: Remove the conditions. (Goc Dundar, closes #10428)
+Files: src/evalfunc.c, src/quickfix.c
+
+Patch 8.2.4959
+Problem: Using NULL regexp program.
+Solution: Check for regexp program becoming NULL in more places.
+Files: src/buffer.c, src/testdir/test_buffer.vim
+
+Patch 8.2.4960
+Problem: Text properties that cross line boundary are not correctly updated
+ for a deleted line.
+Solution: Correct computing location of text property entry. (Paul Ollis,
+ closes #10431, closes #10430)
+Files: src/memline.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4961
+Problem: Build error with a certain combination of features.
+Solution: Adjust #if. (John Marriott)
+Files: src/memline.c
+
+Patch 8.2.4962
+Problem: Files show up in git status.
+Solution: Adjust the list of ignored files. Clean up more test files.
+ (Shane xb Qian, closes #9929)
+Files: .gitignore, src/testdir/Makefile
+
+Patch 8.2.4963
+Problem: Expanding path with "/**" may overrun end of buffer.
+Solution: Use vim_snprintf().
+Files: src/filepath.c
+
+Patch 8.2.4964
+Problem: MS-Windows GUI: mouse event test is flaky.
+Solution: Add a short delay after generating a mouse event.
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.4965
+Problem: GUI: testing mouse move event depends on screen cell size.
+Solution: Multiply the row and column with the screen cell size.
+Files: runtime/doc/testing.txt, src/testing.c, src/testdir/test_gui.vim
+
+Patch 8.2.4966
+Problem: MS-Windows GUI: mouse event test gets extra event.
+Solution: Ignore one move event.
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.4967 (after 8.2.4966)
+Problem: MS-Windows GUI: mouse event test sometimes fails.
+Solution: Ignore one move event only if there is an extra event.
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.4968
+Problem: Reading past end of the line when C-indenting.
+Solution: Check for NUL.
+Files: src/cindent.c, src/testdir/test_cindent.vim
+
+Patch 8.2.4969
+Problem: Changing text in Visual mode may cause invalid memory access.
+Solution: Check the Visual position after making a change.
+Files: src/change.c, src/edit.c, src/misc2.c, src/proto/misc2.pro,
+ src/testdir/test_visual.vim
+
+Patch 8.2.4970
+Problem: "eval 123" gives an error, "eval 'abc'" does not.
+Solution: Also give an error when evaluating only a string. (closes #10434)
+Files: src/ex_eval.c, src/testdir/test_vim9_cmd.vim
+
+Patch 8.2.4971
+Problem: Vim9: interpolated string seen as range.
+Solution: Recognize an interpolated string at the start of a command line.
+ (closes #10434)
+Files: src/ex_docmd.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4972
+Problem: Vim9: compilation fails when using dict member when skipping.
+Solution: Do not generate ISN_USEDICT when skipping. (closes #10433)
+Files: src/vim9expr.c, src/testdir/test_vim9_expr.vim
+
+Patch 8.2.4973
+Problem: Vim9: type error for list unpack mentions argument.
+Solution: Mention variable. (close #10435)
+Files: src/vim9.h, src/vim9execute.c, src/vim9instr.c,
+ src/proto/vim9instr.pro, src/vim9compile.c,
+ src/testdir/test_vim9_script.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4974
+Problem: ":so" command may read after end of buffer.
+Solution: Compute length of text properly.
+Files: src/scriptfile.c, src/testdir/test_source.vim
+
+Patch 8.2.4975
+Problem: Recursive command line loop may cause a crash.
+Solution: Limit recursion of getcmdline().
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.4976
+Problem: Coverity complains about not restoring a saved value.
+Solution: Restore value before handling error.
+Files: src/vim9execute.c
+
+Patch 8.2.4977
+Problem: Memory access error when substitute expression changes window.
+Solution: Disallow changing window in substitute expression.
+Files: src/ex_cmds.c, src/testdir/test_substitute.vim
+
+Patch 8.2.4978
+Problem: No error if engine selection atom is not at the start.
+Solution: Give an error. (Christian Brabandt, closes #10439)
+Files: runtime/doc/pattern.txt, src/errors.h, src/regexp_bt.c,
+ src/regexp_nfa.c, src/testdir/test_regexp_latin.vim
+
+Patch 8.2.4979
+Problem: Accessing freed memory when line is flushed.
+Solution: Make a copy of the pattern to search for.
+Files: src/window.c, src/testdir/test_tagjump.vim
+
+Patch 8.2.4980
+Problem: When 'shortmess' contains 'A' loading a session may still warn for
+ an existing swap file. (Melker Österberg)
+Solution: Keep the 'A' flag to 'shortmess' in the session file.
+ (closes #10443)
+Files: src/session.c, src/testdir/test_mksession.vim
+
+Patch 8.2.4981
+Problem: It is not possible to manipulate autocommands.
+Solution: Add functions to add, get and set autocommands. (Yegappan
+ Lakshmanan, closes #10291)
+Files: runtime/doc/autocmd.txt, runtime/doc/builtin.txt,
+ runtime/doc/usr_41.txt, src/autocmd.c, src/evalfunc.c,
+ src/proto/autocmd.pro, src/testdir/test_autocmd.vim,
+ src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.4982
+Problem: Colors in terminal window are not 100% correct.
+Solution: Use g:terminal_ansi_colors as documented. (closes #10429,
+ closes #7227 closes #10347)
+Files: src/job.c, src/option.c, src/proto/term.pro,
+ src/terminal.c, src/proto/terminal.pro, src/term.c,
+ src/testdir/test_functions.vim, src/testdir/test_terminal.vim
+
+Patch 8.2.4983 (after 8.2.4982)
+Problem: Colors test fails in the GUI.
+Solution: Reset g:terminal_ansi_colors.
+Files: src/testdir/test_functions.vim
+
+Patch 8.2.4984
+Problem: Dragging statusline fails for window with winbar.
+Solution: Fix off-by-one error. (closes #10448)
+Files: src/mouse.c, src/testdir/test_winbar.vim
+
+Patch 8.2.4985
+Problem: PVS warns for possible array underrun.
+Solution: Add a check for a positive value. (Goc Dundar, closes #10451)
+Files: src/spell.c
+
+Patch 8.2.4986
+Problem: Some github actions are outdated.
+Solution: Update CodeQl to v2, update checkout to v3. (closes #10450)
+Files: .github/workflows/ci.yml, .github/workflows/codeql-analysis.yml,
+ .github/workflows/coverity.yml
+
+Patch 8.2.4987
+Problem: After deletion a small fold may be closable.
+Solution: Check for a reverse range. (Brandon Simmons, closes #10457)
+Files: src/fold.c, src/testdir/test_fold.vim
+
+Patch 8.2.4988
+Problem: Textprop in wrong position when replacing multi-byte chars.
+Solution: Adjust textprop position. (closes #10461)
+Files: src/change.c, src/testdir/test_textprop.vim
+
+Patch 8.2.4989
+Problem: Cannot specify a function name for :defcompile.
+Solution: Implement a function name argument for :defcompile.
+Files: runtime/doc/vim9.txt, src/userfunc.c, src/proto/userfunc.pro,
+ src/vim9execute.c, src/ex_cmds.h, src/testdir/test_vim9_cmd.vim,
+ src/testdir/test_vim9_disassemble.vim
+
+Patch 8.2.4990 (after 8.2.4989)
+Problem: Memory leak when :defcompile fails.
+Solution: Free fname when returning early.
+Files: src/userfunc.c
+
+Patch 8.2.4991
+Problem: No test for what patch 8.1.0535 fixes.
+Solution: Add a test. (closes #10462)
+Files: src/testdir/test_fold.vim
+
+Patch 8.2.4992 (after 8.2.4989)
+Problem: Compiler warning for possibly uninitialized variable. (Tony
+ Mechelynck)
+Solution: Initialize variable in the caller instead of in the function.
+Files: src/userfunc.c, src/vim9execute.c
+
+Patch 8.2.4993
+Problem: smart/C/lisp indenting is optional, which makes the code more
+ complex, while it only reduces the executable size a bit.
+Solution: Graduate FEAT_CINDENT, FEAT_SMARTINDENT and FEAT_LISP.
+Files: runtime/doc/builtin.txt, runtime/doc/indent.txt,
+ runtime/doc/options.txt, runtime/doc/various.txt, src/feature.h,
+ src/buffer.c, src/change.c, src/cindent.c, src/charset.c,
+ src/edit.c, src/evalfunc.c, src/indent.c, src/insexpand.c,
+ src/main.c, src/mouse.c, src/ops.c, src/option.c, src/optionstr.c,
+ src/register.c, src/search.c, src/textformat.c, src/version.c,
+ src/option.h, src/optiondefs.h, src/structs.h, src/globals.h,
+ src/testdir/test_edit.vim
+
+Patch 8.2.4994
+Problem: Tests are using legacy functions.
+Solution: Convert a few tests to use :def functions.
+Files: src/testdir/test_cindent.vim
+
+Patch 8.2.4995 (after 8.2.4992)
+Problem: Still a compiler warning for possibly uninitialized variable.
+ (Tony Mechelynck)
+Solution: Initialize variables.
+Files: src/vim9execute.c
+
+Patch 8.2.4996 (after 8.2.4969)
+Problem: setbufline() may change Visual selection. (Qiming Zhao)
+Solution: Disable Visual mode when using another buffer. (closes #10466)
+Files: src/evalbuffer.c, src/testdir/test_bufline.vim
+
+Patch 8.2.4997
+Problem: Python: changing hidden buffer can cause the display to be messed
+ up.
+Solution: Do not mark changed lines when using another buffer. (Paul Ollis,
+ closes #10437, closes #7972)
+Files: src/if_py_both.h, src/testdir/test_python3.vim
+
+Patch 8.2.4998
+Problem: Vim9: crash when using multiple funcref().
+Solution: Check if varargs type is NULL. (closes #10467)
+Files: src/vim9type.c, src/testdir/test_vim9_func.vim
+
+Patch 8.2.4999
+Problem: Filetype test table is not properly sorted.
+Solution: Sort by filetype. (Doug Kearns)
+Files: src/testdir/test_filetype.vim
+
+Patch 8.2.5000
+Problem: No patch for documentation updates.
+Solution: Update documentation files.
+Files: runtime/doc/arabic.txt, runtime/doc/autocmd.txt,
+ runtime/doc/builtin.txt, runtime/doc/change.txt,
+ runtime/doc/channel.txt, runtime/doc/cmdline.txt,
+ runtime/doc/diff.txt, runtime/doc/digraph.txt,
+ runtime/doc/editing.txt, runtime/doc/eval.txt,
+ runtime/doc/filetype.txt, runtime/doc/fold.txt,
+ runtime/doc/ft_ada.txt, runtime/doc/ft_ps1.txt,
+ runtime/doc/ft_raku.txt, runtime/doc/ft_rust.txt,
+ runtime/doc/ft_sql.txt, runtime/doc/gui.txt,
+ runtime/doc/gui_w32.txt, runtime/doc/helphelp.txt,
+ runtime/doc/help.txt, runtime/doc/if_cscop.txt,
+ runtime/doc/if_lua.txt, runtime/doc/if_perl.txt,
+ runtime/doc/if_pyth.txt, runtime/doc/if_tcl.txt,
+ runtime/doc/indent.txt, runtime/doc/index.txt,
+ runtime/doc/insert.txt, runtime/doc/intro.txt,
+ runtime/doc/map.txt, runtime/doc/mbyte.txt,
+ runtime/doc/message.txt, runtime/doc/motion.txt,
+ runtime/doc/netbeans.txt, runtime/doc/options.txt,
+ runtime/doc/os_dos.txt, runtime/doc/os_vms.txt,
+ runtime/doc/os_win32.txt, runtime/doc/pattern.txt,
+ runtime/doc/pi_netrw.txt, runtime/doc/pi_zip.txt,
+ runtime/doc/popup.txt, runtime/doc/print.txt,
+ runtime/doc/quickfix.txt, runtime/doc/quickref.txt,
+ runtime/doc/remote.txt, runtime/doc/repeat.txt,
+ runtime/doc/rileft.txt, runtime/doc/scroll.txt,
+ runtime/doc/sign.txt, runtime/doc/spell.txt,
+ runtime/doc/sponsor.txt, runtime/doc/starting.txt,
+ runtime/doc/syntax.txt, runtime/doc/tabpage.txt,
+ runtime/doc/tagsrch.txt, runtime/doc/terminal.txt,
+ runtime/doc/term.txt, runtime/doc/testing.txt,
+ runtime/doc/textprop.txt, runtime/doc/tips.txt,
+ runtime/doc/todo.txt, runtime/doc/uganda.txt,
+ runtime/doc/undo.txt, runtime/doc/usr_02.txt,
+ runtime/doc/usr_04.txt, runtime/doc/usr_05.txt,
+ runtime/doc/usr_06.txt, runtime/doc/usr_08.txt,
+ runtime/doc/usr_09.txt, runtime/doc/usr_12.txt,
+ runtime/doc/usr_20.txt, runtime/doc/usr_29.txt,
+ runtime/doc/usr_40.txt, runtime/doc/usr_41.txt,
+ runtime/doc/usr_45.txt, runtime/doc/usr_46.txt,
+ runtime/doc/usr_50.txt, runtime/doc/usr_51.txt,
+ runtime/doc/usr_52.txt, runtime/doc/usr_90.txt,
+ runtime/doc/usr_toc.txt, runtime/doc/various.txt,
+ runtime/doc/version5.txt, runtime/doc/version6.txt,
+ runtime/doc/version7.txt, runtime/doc/version8.txt,
+ runtime/doc/version9.txt, runtime/doc/vi_diff.txt,
+ runtime/doc/vim9.txt, runtime/doc/visual.txt,
+ runtime/doc/windows.txt, runtime/doc/tags, runtime/doc/Makefile
+
+Patch 8.2.5001
+Problem: Checking translations affects the search pattern history.
+Solution: Use "keeppatterns". (Doug Kearns)
+Files: src/po/check.vim
+
+Patch 8.2.5002
+Problem: deletebufline() may change Visual selection.
+Solution: Disable Visual mode when using another buffer. (closes #10469)
+Files: src/evalbuffer.c, src/testdir/test_bufline.vim
+
+Patch 8.2.5003
+Problem: Cannot do bitwise shifts.
+Solution: Add the >> and << operators. (Yegappan Lakshmanan, closes #8457)
+Files: runtime/doc/eval.txt, src/errors.h, src/eval.c, src/structs.h,
+ src/vim.h, src/vim9execute.c, src/vim9expr.c,
+ src/testdir/test_expr.vim, src/testdir/test_vim9_disassemble.vim,
+ src/testdir/test_vim9_expr.vim
+
+Patch 8.2.5004
+Problem: Right shift on negative number does not work as documented.
+Solution: Use a uvarnumber_T type cast.
+Files: runtime/doc/eval.txt, src/eval.c, src/vim9expr.c,
+ src/vim9execute.c, src/charset.c, src/testdir/test_expr.vim
+
+Patch 8.2.5005 (after 8.2.5003)
+Problem: Compiler warning for uninitialized variable. (John Marriott)
+Solution: Initialize the pointer to NULL.
+Files: src/vim9expr.vim
+
+Patch 8.2.5006 (after 8.2.5003)
+Problem: Asan warns for undefined behavior.
+Solution: Cast the shifted value to unsigned.
+Files: src/eval.c, src/vim9expr.c, src/vim9execute.c
+
+Patch 8.2.5007
+Problem: Spell suggestion may use uninitialized memory. (Zdenek Dohnal)
+Solution: Avoid going over the end of the word.
+Files: src/spellsuggest.c, src/testdir/test_spell_utf8.vim
+
+Patch 8.2.5008
+Problem: When 'formatoptions' contains "/" wrongly wrapping a long trailing
+ comment.
+Solution: Pass the OPENLINE_FORMAT flag.
+Files: src/change.c, src/vim.h, src/textformat.c,
+ src/testdir/test_textformat.vim
+
+Patch 8.2.5009
+Problem: Fold may not be closable after appending.
+Solution: Set the fd_small flag to MAYBE. (Brandon Simmons, closes #10471)
+Files: src/fold.c, src/testdir/test_fold.vim
+
+Patch 8.2.5010
+Problem: The terminal debugger uses various global variables.
+Solution: Add a dictionary to hold the terminal debugger preferences.
+Files: runtime/doc/terminal.txt,
+ runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
+
+Patch 8.2.5011
+Problem: Replacing an autocommand requires several lines.
+Solution: Add the "replace" flag to autocmd_add(). (Yegappan Lakshmanan,
+ closes #10473)
+Files: runtime/doc/autocmd.txt, runtime/doc/builtin.txt, src/autocmd.c,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.5012
+Problem: Cannot select one character inside ().
+Solution: Do not try to extend the area if it is empty. (closes #10472,
+ closes #6616)
+Files: src/textobject.c, src/testdir/test_textobjects.vim
+
+Patch 8.2.5013
+Problem: After text formatting the cursor may be in an invalid position.
+Solution: Correct the cursor position after formatting.
+Files: src/textformat.c, src/testdir/test_textformat.vim
+
+Patch 8.2.5014
+Problem: Byte offsets are wrong when using text properties.
+Solution: Make sure text properties do not affect the byte counts.
+ (Paul Ollis, closes #10474)
+Files: src/memline.c, src/textprop.c, src/testdir/test_textprop.vim
+
+Patch 8.2.5015
+Problem: Hoon and Moonscript files are not recognized.
+Solution: Add filetype patterns. (Goc Dundar, closes #10478)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.5016
+Problem: Access before start of text with a put command.
+Solution: Check the length is more than zero.
+Files: src/register.c, src/testdir/test_put.vim
+
+Patch 8.2.5017
+Problem: Gcc 12.1 warns for uninitialized variable.
+Solution: Initialize the variable. (closes #10476)
+Files: src/evalvars.c
+
+Patch 8.2.5018
+Problem: Vim9: some code is not covered by tests.
+Solution: Delete dead code.
+Files: src/vim9instr.c, src/proto/vim9instr.pro, src/vim9compile.c,
+ src/vim9expr.c,
+
+Patch 8.2.5019
+Problem: Cannot get the first screen column of a character.
+Solution: Let virtcol() optionally return a list. (closes #10482,
+ closes #7964)
+Files: runtime/doc/builtin.txt, src/evalfunc.c,
+ src/testdir/test_functions.vim, src/testdir/test_vim9_builtin.vim
+
+Patch 8.2.5020
+Problem: Using 'imstatusfunc' and 'imactivatefunc' breaks 'foldopen'.
+Solution: Save and restore the KeyTyped flag. (closes #10479)
+Files: src/gui_xim.c, src/testdir/test_iminsert.vim
+
+
+Patch 8.2.5021
+Problem: Build fails with normal features and +terminal. (Dominique Pellé)
+Solution: Add #ifdefs. (closes #10484)
+Files: src/terminal.c
+
+Patch 8.2.5022
+Problem: 'completefunc'/'omnifunc' error does not end completion.
+Solution: Check if there was an error or exception. (closes #10486,
+ closes #4218)
+Files: src/insexpand.c, src/testdir/test_ins_complete.vim
+
+Patch 8.2.5023
+Problem: Substitute overwrites allocated buffer.
+Solution: Disallow undo when in a substitute command.
+Files: src/normal.c, src/undo.c, src/testdir/test_substitute.vim
+
+Patch 8.2.5024
+Problem: Using freed memory with "]d".
+Solution: Copy the pattern before searching.
+Files: src/normal.c, src/testdir/test_tagjump.vim
+
+Patch 8.2.5025
+Problem: Vim9: a few lines not covered by tests.
+Solution: Add a few tests.
+Files: src/vim9script.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_import.vim
+
+Patch 8.2.5026
+Problem: Vim9: a few lines not covered by tests.
+Solution: Delete dead code. Add a few test cases. make "12->func()" work.
+Files: src/vim9type.c, src/ex_docmd.c, src/proto/ex_docmd.pro,
+ src/vim9compile.c, src/testdir/test_vim9_assign.vim,
+ src/testdir/test_vim9_func.vim
+
+Patch 8.2.5027
+Problem: Error for missing :endif when an exception was thrown. (Dani
+ Dickstein)
+Solution: Do not give an error when aborting. (closes #10490)
+Files: src/ex_docmd.c, src/testdir/test_trycatch.vim
+
+Patch 8.2.5028
+Problem: Syntax regexp matching can be slow.
+Solution: Adjust the counters for checking the timeout to check about once
+ per msec. (closes #10487, closes #2712)
+Files: src/regexp_bt.c, src/regexp_nfa.c
+
+Patch 8.2.5029
+Problem: "textlock" is always zero.
+Solution: Remove "textlock" and rename "textwinlock" to "textlock".
+ (closes #10489)
+Files: runtime/doc/insert.txt, runtime/doc/tags, src/beval.c,
+ src/change.c, src/edit.c, src/errors.h, src/eval.c, src/ex_cmds.c,
+ src/ex_getln.c, src/proto/ex_getln.pro, src/globals.h,
+ src/indent.c, src/insexpand.c, src/map.c, src/register.c,
+ src/undo.c, src/window.c, src/testdir/test_edit.vim,
+ src/testdir/test_ins_complete.vim, src/testdir/test_popup.vim,
+ src/testdir/test_quickfix.vim
+
+Patch 8.2.5030
+Problem: autocmd_add() can only handle one event and pattern.
+Solution: Support a list of events and patterns. (Yegappan Lakshmanan,
+ closes #10483)
+Files: runtime/doc/builtin.txt, src/autocmd.c, src/errors.h,
+ src/testdir/test_autocmd.vim
+
+Patch 8.2.5031
+Problem: Cannot easily run the benchmarks.
+Solution: Have "make benchmark" in the src directory work.
+Files: src/Makefile, src/testdir/Makefile
+
+Patch 8.2.5032
+Problem: Python 3 test fails without the GUI.
+Solution: Check the balloon_eval feature is available.
+Files: src/testdir/test_python3.vim
+
+Patch 8.2.5033 (after 8.2.5030)
+Problem: Build error with +eval but without +quickfix. Warning for
+ uninitialized variable.
+Solution: Adjust #ifdefs. (John Marriott)
+Files: src/errors.h, src/autocmd.c
+
+Patch 8.2.5034
+Problem: There is no way to get the byte index from a virtual column.
+Solution: Add virtcol2col(). (Yegappan Lakshmanan, closes #10477,
+ closes #10098)
+Files: runtime/doc/builtin.txt, runtime/doc/usr_41.txt, src/evalfunc.c,
+ src/move.c, src/proto/move.pro, src/testdir/test_cursor_func.vim
+
+Patch 8.2.5035
+Problem: When splitting a window the changelist position moves.
+Solution: Set the changelist index a bit later. (closes #10493)
+Files: src/window.c, src/testdir/test_changelist.vim,
+ src/testdir/test_normal.vim
+
+Patch 8.2.5036 (after 8.2.5028)
+Problem: Using two counters for timeout check in NFA engine.
+Solution: Use only one counter. Tune the counts based on guessing.
+Files: src/regexp_nfa.c
+
+Patch 8.2.5037
+Problem: Cursor position may be invalid after "0;" range.
+Solution: Check the cursor position when it was set by ";" in the range.
+Files: src/ex_docmd.c, src/testdir/test_excmd.vim
+
+Patch 8.2.5038
+Problem: A finished terminal in a popup window does not show a scrollbar.
+Solution: Show the scrollbar if the terminal job is finished. (closes
+ #10497)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_poptermscroll_1.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_2.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_3.dump
+
+Patch 8.2.5039
+Problem: Confusing error if first argument of popup_create() is wrong.
+Solution: Give a more informative error.
+Files: src/popupwin.c, src/testdir/test_popupwin.vim, src/errors.h,
+ src/testdir/dumps/Test_popup_settext_07.dump
+
+Patch 8.2.5040
+Problem: Scrollbar thumb in scrolled popup not visible.
+Solution: Show at least one thumb character. (fixes 10492)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_scroll_13.dump
+
+Patch 8.2.5041
+Problem: Cannot close a terminal popup with "NONE" job.
+Solution: Adjust the conditions for whether a job is running.
+ (closes #10498)
+Files: src/buffer.c, src/terminal.c, src/proto/terminal.pro,
+ src/undo.c, src/testdir/test_popupwin.vim
+
+Patch 8.2.5042
+Problem: Scrollbar thumb in tall scrolled popup not visible.
+Solution: Show at least one thumb character. (fixes 10492)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_scroll_13.dump
+
+Patch 8.2.5043
+Problem: Can open a cmdline window from a substitute expression.
+Solution: Disallow opening a command line window when text or buffer is
+ locked.
+Files: src/buffer.c, src/ex_getln.c, src/proto/ex_getln.pro,
+ src/window.c, src/testdir/test_substitute.vim
+
+Patch 8.2.5044 (after 8.2.5043)
+Problem: Command line test fails.
+Solution: Also beep when cmdline win can't be opened because of locks.
+ Make the test not beep. Make the test pass on MS-Windows.
+Files: src/ex_getln.c, src/testdir/test_substitute.vim
+
+Patch 8.2.5045
+Problem: Can escape a terminal popup window when the job is finished.
+Solution: Only check for a finished job where it is relevant.
+ (closes #10253)
+Files: src/popupwin.c, src/testdir/test_popupwin.vim,
+ src/testdir/dumps/Test_popupwin_poptermscroll_1.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_2.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_3.dump,
+ src/testdir/dumps/Test_popupwin_poptermscroll_4.dump
+
+Patch 8.2.5046
+Problem: vim_regsub() can overwrite the destination.
+Solution: Pass the destination length, give an error when it doesn't fit.
+Files: src/regexp.h, src/regexp.c, src/proto/regexp.pro, src/eval.c,
+ src/ex_cmds.c
+
+Patch 8.2.5047
+Problem: CurSearch highlight is often wrong.
+Solution: Remember the last highlighted position and redraw when needed.
+Files: src/globals.h, src/match.c, src/drawscreen.c, src/change.c,
+ src/testdir/test_search.vim,
+ src/testdir/dumps/Test_hlsearch_cursearch_changed_1.dump
+
+Patch 8.2.5048
+Problem: When using XIM the gui test may fail.
+Solution: Only use --not-a-term when not using XIM.
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.5049
+Problem: Insufficient tests for autocommands.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #10507)
+Files: src/autocmd.c, src/testdir/gen_opt_test.vim,
+ src/testdir/test_autocmd.vim, src/testdir/test_cmdline.vim
+
+Patch 8.2.5050
+Problem: Using freed memory when searching for pattern in path.
+Solution: Make a copy of the line.
+Files: src/search.c, src/testdir/test_tagjump.vim
+
+Patch 8.2.5051
+Problem: Check for autocmd_add() event argument is confusing.
+Solution: Make the code more straightforward.
+Files: src/autocmd.c
+
+Patch 8.2.5052
+Problem: CI checkout step title is a bit cryptic.
+Solution: Add a better title. (closes #10509)
+Files: .github/workflows/ci.yml, .github/workflows/coverity.yml,
+ .github/workflows/codeql-analysis.yml
+
+Patch 8.2.5053
+Problem: Cannot have a comment halfway an expression in an autocmd command
+ block.
+Solution: When skipping over the NL also skip over comments. (closes #10519)
+Files: src/eval.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.5054
+Problem: No good filetype for conf files similar to dosini.
+Solution: Add the confini filetype. (closes #10518)
+Files: runtime/filetype.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.5055
+Problem: Statusline is not updated when terminal title changes.
+Solution: Redraw the status line when the title changes. (issue #10425)
+Files: src/terminal.c
+
+Patch 8.2.5056
+Problem: The channel log only contains some of the raw terminal output.
+Solution: Add the "o" flag to log all terminal output. Use it for "--log".
+Files: runtime/doc/channel.txt, runtime/doc/starting.txt, src/main.c,
+ src/channel.c, src/vim.h, src/term.c, src/edit.c, src/normal.c,
+ src/optionstr.c
+
+Patch 8.2.5057
+Problem: Using gettimeofday() for timeout is very inefficient.
+Solution: Set a platform dependent timer. (Paul Ollis, closes #10505)
+Files: src/auto/configure, src/config.h.in, src/configure.ac,
+ src/drawscreen.c, src/errors.h, src/evalfunc.c, src/ex_cmds.c,
+ src/ex_getln.c, src/match.c, src/os_mac.h, src/os_macosx.m,
+ src/os_unix.c, src/os_win32.c, src/proto/os_unix.pro,
+ src/proto/os_win32.pro, src/proto/regexp.pro, src/quickfix.c,
+ src/regexp.c, src/regexp.h, src/regexp_bt.c, src/regexp_nfa.c,
+ src/screen.c, src/search.c, src/structs.h, src/syntax.c,
+ src/testdir/test_hlsearch.vim, src/testdir/test_search.vim,
+ src/testdir/test_syntax.vim
+
+Patch 8.2.5058
+Problem: input() does not handle composing characters properly.
+Solution: Use mb_cptr2char_adv() instead of mb_ptr2char_adv().
+ (closes #10527)
+Files: src/getchar.c, src/testdir/test_functions.vim
+
+Patch 8.2.5059
+Problem: Autoconf 2.71 produces many obsolete warnings.
+Solution: Replace obsolete macros with non-obsolete ones, where the
+ functionality does not change. (issue #10528)
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.5060 (after 8.2.5059)
+Problem: Running configure fails.
+Solution: Remove line break.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.5061
+Problem: C89 requires signal handlers to return void.
+Solution: Drop RETSIGTYPE and hard-code a void return value.
+Files: src/configure.ac, src/auto/configure, src/if_cscope.c,
+ src/os_unix.c, src/pty.c, src/os_mac.h, src/os_vms_conf.h,
+ src/config.h.in, src/osdef1.h.in
+
+Patch 8.2.5062
+Problem: Coverity warns for dead code.
+Solution: Remove the dead code.
+Files: src/os_unix.c, src/match.c
+
+Patch 8.2.5063
+Problem: Error for a command may go over the end of IObuff.
+Solution: Truncate the message.
+Files: src/ex_docmd.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.5064
+Problem: No test for what 8.1.0052 fixes.
+Solution: Add a test. (closes #10531)
+Files: src/getchar.c, src/testdir/test_mapping.vim
+
+Patch 8.2.5065
+Problem: Wrong return type for main() in tee.c.
+Solution: Use "int" instead of "void". Remove unused variable.
+Files: src/tee/tee.c
+
+Patch 8.2.5066
+Problem: Can specify multispace listchars only for whole line.
+Solution: Add "leadmultispace". (Christian Brabandt, closes #10496)
+Files: runtime/doc/options.txt, src/drawline.c, src/message.c,
+ src/screen.c, src/structs.h, src/window.c,
+ src/testdir/test_listchars.vim
+
+Patch 8.2.5067
+Problem: Timer_create is not available on every Mac system. (Hisashi T
+ Fujinaka)
+Solution: Adjust #ifdef.
+Files: src/os_unix.c
+
+Patch 8.2.5068
+Problem: Gcc 12.1 warning when building tee.
+Solution: Change type to size_t. (John Marriott)
+Files: src/tee/tee.c
+
+Patch 8.2.5069
+Problem: Various warnings from clang on MS-Windows.
+Solution: Fix the code to avoid the warnings. (Yegappan Lakshmanan,
+ closes #10538)
+Files: src/dosinst.c, src/fileio.c, src/gui_w32.c, src/os_mswin.c,
+ src/os_win32.c
+
+Patch 8.2.5070
+Problem: Unnecessary code.
+Solution: Remove code that isn't needed. (closes #10534)
+Files: src/message.c, src/screen.c
+
+Patch 8.2.5071
+Problem: With some Mac OS version clockid_t is redefined.
+Solution: Adjust #ifdefs. (Ozaki Kiichi, closes #10549)
+Files: src/os_mac.h
+
+Patch 8.2.5072
+Problem: Using uninitialized value and freed memory in spell command.
+Solution: Initialize "attr". Check for empty line early.
+Files: src/spell.c, src/testdir/test_spell_utf8.vim
+
+Patch 8.2.5073
+Problem: Clang on MS-Windows produces warnings.
+Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #10546)
+Files: src/dosinst.c, src/dosinst.h, src/gui_dwrite.cpp, src/gui_w32.c,
+ src/iscygpty.c, src/libvterm/src/vterm_internal.h, src/mbyte.c,
+ src/os_win32.c, src/os_win32.h, src/term.c, src/xdiff/xinclude.h
+
+Patch 8.2.5074
+Problem: Spell test fails on MS-Windows.
+Solution: Do not change 'encoding'
+Files: src/testdir/test_spell_utf8.vim
+
+Patch 8.2.5075
+Problem: Clang gives an out of bounds warning.
+Solution: adjust conditional expression (John Marriott)
+Files: src/ui.c
+
+Patch 8.2.5076
+Problem: Unnecessary code.
+Solution: Remove code and replace with function call. (closes #10552)
+Files: src/drawline.c, src/getchar.c
+
+Patch 8.2.5077
+Problem: Various warnings from clang on MS-Windows.
+Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #10553)
+Files: src/dosinst.c, src/dosinst.h, src/filepath.c, src/gui_w32.c,
+ src/misc1.c, src/os_win32.c
+
+Patch 8.2.5078
+Problem: Substitute test has a one second delay.
+Solution: Use ":silent!". Add another test case. (closes #10558)
+Files: src/testdir/test_substitute.vim
+
+Patch 8.2.5079
+Problem: DirChanged autocommand may use freed memory. (Shane-XB Qian)
+Solution: Free the memory later. (closes #10555)
+Files: src/ex_docmd.c, src/testdir/test_autocmd.vim
+
+Patch 8.2.5080
+Problem: When indenting gets out of hand it is hard to stop.
+Solution: When line gets too long set got_int.
+Files: src/indent.c
+
+Patch 8.2.5081
+Problem: Autocmd test fails on MS-Windows.
+Solution: Set shellslash to get forward slashes.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.5082 (after 8.2.5080)
+Problem: Retab test fails.
+Solution: Disable the test for now.
+Files: src/testdir/test_retab.vim
+
+Patch 8.2.5083
+Problem: Autocmd test still fails on MS-Windows.
+Solution: Change backward to forward slashes.
+Files: src/testdir/test_autocmd.vim
+
+Patch 8.2.5084
+Problem: When the GUI shows a dialog tests get stuck.
+Solution: Add the --gui-dialog-file argument.
+Files: runtime/doc/starting.txt, src/Make_mvc.mak, src/gui.c, src/main.c,
+ src/message.c, src/os_mswin.c, src/proto/gui.pro,
+ src/proto/main.pro, src/structs.h, src/testdir/Make_dos.mak,
+ src/testdir/Make_ming.mak, src/testdir/Makefile,
+ src/testdir/runtest.vim, src/testdir/shared.vim
+
+Patch 8.2.5085
+Problem: Gcc gives warning for signed/unsigned difference.
+Solution: Use a different pointer type. (John Marriott)
+Files: src/os_mswin.c
+
+Patch 8.2.5086
+Problem: CI runs on Windows 2019.
+Solution: Switch to Windows 2022. (closes #10566)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.5087
+Problem: Cannot build with clang on MS-Windows.
+Solution: Add support for building with clang. (Yegappan Lakshmanan,
+ closes #10557)
+Files: src/GvimExt/Make_ming.mak, src/INSTALLpc.txt,
+ src/Make_cyg_ming.mak
+
+Patch 8.2.5088
+Problem: Value of cmod_verbose is a bit complicated to use.
+Solution: Use zero for not set, value + 1 when set. (closes #10564)
+Files: src/ex_docmd.c, src/ex_getln.c, src/globals.h, src/structs.h
+
+Patch 8.2.5089
+Problem: Some functions return a different value on failure.
+Solution: Initialize the return value earlier. (Yegappan Lakshmanan,
+ closes #10568)
+Files: src/autocmd.c, src/dict.c, src/evalfunc.c, src/list.c
+
+Patch 8.2.5090
+Problem: MS-Windows: vim.def is no longer used.
+Solution: Delete vim.def. (Ken Takata, closes #10569)
+Files: Filelist, Makefile, src/vim.def
+
+Patch 8.2.5091
+Problem: Terminal test fails with some shell commands.
+Solution: Disable setting the window title. (closes #10530)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.5092
+Problem: Using "'<,'>" in Ex mode may compare unrelated pointers.
+Solution: Set eap->cmd to "+" only later.
+Files: src/ex_docmd.c
+
+Patch 8.2.5093
+Problem: Error message for unknown command may mention the command twice.
+ (Malcolm Rowe)
+Solution: Add the did_append_cmd flag. (closes #10570)
+Files: src/ex_docmd.c
+
+Patch 8.2.5094
+Problem: MS-Windows GUI: empty command may cause a dialog.
+Solution: Delete the dialog file. Improve the message.
+Files: src/testdir/runtest.vim, src/testdir/test_ex_mode.vim
+
+Patch 8.2.5095
+Problem: Terminal test still fails with some shell commands.
+Solution: Disable setting the window title in the Vim instance running in a
+ terminal window. (closes #10530)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.5096 (after 8.2.5095)
+Problem: Terminal test still fails with some shell commands.
+Solution: Add missing "call". (closes #10530)
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.5097
+Problem: Using uninitialized memory when using 'listchars'.
+Solution: Use the length returned by mb_char2bytes(). (closes #10576)
+Files: src/message.c
+
+Patch 8.2.5098
+Problem: Spelldump test sometimes hangs.
+Solution: Catch the problem of the spell file not being found to avoid
+ hanging in the download dialog.
+Files: src/testdir/test_spell.vim
+
+Patch 8.2.5099
+Problem: Some terminal tests are not retried.
+Solution: Mark terminal tests as flaky.
+Files: src/testdir/test_terminal.vim
+
+Patch 8.2.5100
+Problem: Memory usage tests are not retried.
+Solution: Mark memory usage tests as flaky.
+Files: src/testdir/test_memory_usage.vim
+
+Patch 8.2.5101
+Problem: MS-Windows with MinGW: $CC may be "cc" instead of "gcc".
+Solution: Set $CC if it is not matching "clang". (Yegappan Lakshmanan,
+ closes #10578)
+Files: src/INSTALLpc.txt, src/Make_cyg_ming.mak
+
+Patch 8.2.5102
+Problem: Interrupt not caught in test.
+Solution: Consider an exception thrown in the current try/catch when got_int
+ is set. Also catch early exit when not using try/catch.
+Files: src/indent.c, src/testing.c, src/testdir/test_retab.vim,
+ src/testdir/runtest.vim
+
+Patch 8.2.5103
+Problem: Build fails with small features.
+Solution: Add #ifdef. Skip test on MS-Windows.
+Files: src/indent.c, src/testdir/test_retab.vim
+
+Patch 8.2.5104 (after 8.2.5103)
+Problem: Test hangs on MS-Windows.
+Solution: Skip another test on MS-Windows.
+Files: src/testdir/test_retab.vim
+
+Patch 8.2.5105 (after 8.2.5104)
+Problem: Test still hangs on MS-Windows.
+Solution: Skip "nocatch" test the right way.
+Files: src/testdir/test_retab.vim
+
+Patch 8.2.5106
+Problem: Default cmdwin mappings are re-mappable.
+Solution: Make the default mappings not re-mappable. (closes #10580) Use
+ symbols for the first do_map() argument.
+Files: src/vim.h, src/ex_getln.c, src/map.c, src/proto/map.pro,
+ src/digraph.c, src/netbeans.c
+
+Patch 8.2.5107
+Problem: Some callers of rettv_list_alloc() check for not OK. (Christ van
+ Willegen)
+Solution: Use "==" instead of "!=" when checking the return value.
+Files: src/evalbuffer.c, src/channel.c, src/cmdexpand.c, src/evalfunc.c,
+ src/evalwindow.c, src/insexpand.c, src/job.c, src/list.c,
+ src/map.c, src/menu.c, src/mouse.c, src/move.c, src/sign.c,
+ src/textprop.c, src/term.c, src/time.c
+
+Patch 8.2.5108
+Problem: Retab test disabled because it hangs on MS-Windows.
+Solution: Also set got_int at the other place an overlong text is detected.
+Files: src/indent.c, src/testdir/test_retab.vim
+
+Patch 8.2.5109
+Problem: Mode not updated after CTRL-O CTRL-C in Insert mode.
+Solution: Set redraw_mode and use it. (closes #10581)
+Files: src/main.c, src/normal.c, src/testdir/test_normal.vim,
+ src/testdir/dumps/Test_mode_updated_1.dump
+
+Patch 8.2.5110
+Problem: Icon filetype not recognized from the first line.
+Solution: Add a check for the first line. (Doug Kearns)
+Files: runtime/autoload/dist/script.vim, src/testdir/test_filetype.vim
+
+Patch 8.2.5111
+Problem: No test for --gui-dialog-file.
+Solution: Add a test.
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.5112 (after 8.2.5111)
+Problem: Gui test hangs on MS-Windows.
+Solution: Use "!start" to start Vim.
+Files: src/testdir/test_gui.vim
+
+Patch 8.2.5113
+Problem: Timer becomes invalid after fork/exec, :gui gives errors. (Gabriel
+ Dupras)
+Solution: Delete the timer befor forking. (closes #10584)
+Files: src/os_unix.c, src/proto/os_unix.pro, src/gui.c
+
+Patch 8.2.5114
+Problem: Time limit on searchpair() does not work properly.
+Solution: Set the time limit once instead of for each regexp. (closes #10562)
+Files: src/search.c, src/evalfunc.c, src/testdir/test_search.vim
+
+Patch 8.2.5115
+Problem: Search timeout is overrun with some patterns.
+Solution: Check for timeout in more places. Make the flag volatile and
+ atomic. Use assert_inrange() to see what happened.
+Files: src/regexp_nfa.c, src/regexp_bt.c, src/regexp.c, src/os_unix.c,
+ src/proto/os_unix.pro, src/testdir/test_search.vim
+
+Patch 8.2.5116
+Problem: "limit" option of matchfuzzy() not always respected.
+Solution: Remove "else". (Kazuyuki Miyagi, closes #10586)
+Files: runtime/doc/builtin.txt, src/search.c,
+ src/testdir/test_matchfuzzy.vim
+
+Patch 8.2.5117
+Problem: Crash when calling a Lua callback from a :def function. (Bohdan
+ Makohin)
+Solution: Handle FC_CFUNC in call_user_func_check(). (closes #10587)
+Files: src/userfunc.c, src/testdir/test_lua.vim
+
+Patch 8.2.5118
+Problem: MS-Windows: sending a message to another Vim may hang if that Vim
+ is halted.
+Solution: Add a timeout to serverSendToVim(). (Ken Takata, closes #10585)
+Files: runtime/pack/dist/opt/editexisting/plugin/editexisting.vim,
+ src/os_mswin.c
+
+Patch 8.2.5119
+Problem: CI uses cache v2.
+Solution: Use cache v3. (closes #10588)
+Files: .github/workflows/ci.yml
+
+Patch 8.2.5120
+Problem: Searching for quotes may go over the end of the line.
+Solution: Check for running into the NUL.
+Files: src/textobject.c
+
+Patch 8.2.5121
+Problem: Interrupt test sometimes fails.
+Solution: Use a different file name.
+Files: src/testdir/test_interrupt.vim
+
+Patch 8.2.5122
+Problem: Lisp indenting my run over the end of the line.
+Solution: Check for NUL earlier.
+Files: src/indent.c, src/testdir/test_indent.vim
+
+Patch 8.2.5123
+Problem: Using invalid index when looking for spell suggestions.
+Solution: Do not decrement the index when it is zero.
+Files: src/spellsuggest.c, src/testdir/test_spell.vim
+
+Patch 8.2.5124
+Problem: When syntax timeout test fails it does not show the time.
+Solution: Use assert_inrange().
+Files: src/testdir/test_syntax.vim
+
+Patch 8.2.5125
+Problem: MS-Windows: warnings from MinGW compiler.
+Solution: Use "volatile". (Yasuhiro Matsumoto, closes #10589) Initialize
+ variable.
+Files: src/os_win32.c, src/proto/os_win32.pro, src/map.c
+
+Patch 8.2.5126
+Problem: Substitute may overrun destination buffer.
+Solution: Disallow switching buffers in a substitute expression.
+Files: src/ex_docmd.c, src/testdir/test_substitute.vim
+
+Patch 8.2.5127
+Problem: Using assert_true() does not show value on failure.
+Solution: Use assert_inrange(). (closes #10593)
+Files: src/testdir/test_channel.vim, src/testdir/test_hlsearch.vim
+
+Patch 8.2.5128
+Problem: Syntax highlighting disabled when using synID() in searchpair()
+ skip expression and it times out. (Jaehwang Jung)
+Solution: Add the redrawtime_limit_set flag. (closes #10562)
+Files: src/globals.h, src/drawscreen.c, src/syntax.c
+
+Patch 8.2.5129
+Problem: Timeout handling is not optimal.
+Solution: Avoid setting timeout_flag twice. Adjust the pointer when
+ stopping the regexp timeout. Adjust variable name.
+Files: src/os_unix.c, src/os_win32.c, src/regexp.c
+
+Patch 8.2.5130
+Problem: Edit test for mode message fails when using valgrind.
+Solution: Use WaitForAssert(). Run beep test later.
+Files: src/testdir/test_edit.vim
+
+Patch 8.2.5131
+Problem: Timeout implementation is not optimal.
+Solution: Further improvements for timeouts. Add a test for searchpair()
+ timeout. (partly by Paul Ollis)
+Files: src/configure.ac, src/auto/configure,
+ src/testdir/test_hlsearch.vim, src/testdir/test_search.vim
+
+Patch 8.2.5132
+Problem: :mkview test doesn't test much.
+Solution: Save the view with the folds closed. (James McCoy, closes #10596)
+Files: src/testdir/test_mksession.vim
+
+Patch 8.2.5133
+Problem: MacOS: build fails.
+Solution: Remove "#if 0" from timer_delete().
+Files: src/os_macosx.m
+
+Patch 8.2.5134
+Problem: Function has confusing name.
+Solution: Rename tgetent_error() to invoke_tgetent().
+Files: src/term.c
+
+Patch 8.2.5135
+Problem: Running configure gives warnings for main() return type.
+Solution: Specify "int" return type. Avoid a few more warnings.
+Files: src/configure.ac, src/auto/configure
+
+Patch 8.2.5136
+Problem: Debugger test fails when run with valgrind.
+Solution: Wait longer when using valgrind.
+Files: src/testdir/shared.vim, src/testdir/test_debugger.vim,
+ src/testdir/test_search.vim
+
+Patch 8.2.5137
+Problem: Cannot build without the +channel feature. (Dominique Pellé)
+Solution: Add #ifdef around ch_log() calls. (closes #10598)
+Files: src/os_unix.c, src/regexp_nfa.c, src/regexp_bt.c
+
+Patch 8.2.5138
+Problem: Various small issues.
+Solution: Various small improvements.
+Files: src/filepath.c, src/job.c, src/mark.c, src/move.c,
+ src/popupwin.c, src/testdir/test_filetype.vim
+
+Patch 8.2.5139
+Problem: TIME_WITH_SYS_TIME is no longer supported by autoconf.
+Solution: Always include time.h.
+Files: src/os_unix.h
+
+Patch 8.2.5140
+Problem: Seachpair timeout test is flaky.
+Solution: Mark the test as flaky so it is retried.
+Files: src/testdir/test_search.vim
+
+Patch 8.2.5141
+Problem: Using "volatile int" in a signal handler might be wrong.
+Solution: Use "volatile sig_atomic_t".
+Files: src/os_unix.c, src/proto/os_unix.pro, src/os_win32.c,
+ src/proto/os_win32.pro, src/regexp.c,
+
+Patch 8.2.5142
+Problem: Startup test fails if there is a status bar at the top of the
+ screen. (Ernie Rael)
+Solution: Use a larger vertical offset in the test.
+Files: src/testdir/test_startup.vim
+
+Patch 8.2.5143
+Problem: Some tests fail when using valgrind. Spurious leak reports.
+Solution: Use WaitForAssert(). Avoid failing fork/exec. Skip tests where a
+ job is killed when running valgrind.
+Files: src/testdir/test_iminsert.vim, src/testdir/test_popup.vim,
+ src/testdir/test_cscope.vim, src/testdir/test_channel.vim
+
+Patch 8.2.5144
+Problem: With 'lazyredraw' set completion menu may be displayed wrong.
+Solution: When the popup menu is visible do not insert a screen line.
+ (closes #10601)
+Files: src/screen.c
+
+Patch 8.2.5145
+Problem: Exit test causes spurious valgrind reports.
+Solution: Skip test. Add CheckNotValgrind.
+Files: src/testdir/test_exit.vim, src/testdir/check.vim,
+ src/testdir/test_channel.vim
+
+Patch 8.2.5146
+Problem: Memory leak when substitute expression nests.
+Solution: Use an array of expression results.
+Files: src/alloc.c, src/regexp.c, src/proto/regexp.pro,
+ src/errors.h, src/ex_cmds.c, src/testdir/test_substitute.vim
+
+Patch 8.2.5147
+Problem: Flaky test always fails on retry.
+Solution: Delete the created function.
+Files: src/testdir/test_search.vim
+
+Patch 8.2.5148
+Problem: Invalid memory access when using an expression on the command line.
+Solution: Make sure the position does not go negative.
+Files: src/ex_getln.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.5149 (after 8.2.5148)
+Problem: Cannot build without the +eval feature. (Tony Mechelynck)
+Solution: Add #ifdefs.
+Files: src/ex_getln.c
+
+Patch 8.2.5150
+Problem: Read past the end of the first line with ":0;'{".
+Solution: When on line zero check the column is valid for line one.
+Files: src/ex_docmd.c, src/testdir/test_cmdline.vim
+
+Patch 8.2.5151
+Problem: Reading beyond the end of the line with lisp indenting.
+Solution: Avoid going over the NUL at the end of the line.
+Files: src/indent.c, src/testdir/test_lispwords.vim
+
+Patch 8.2.5152
+Problem: search() gets stuck with "c" and skip evaluates to true.
+Solution: Reset the SEARCH_START option. (closes #10608)
+Files: src/evalfunc.c, src/testdir/test_syntax.vim
+
+Patch 8.2.5153
+Problem: "make uninstall" does not remove colors/lists.
+Solution: Add a line to the Makefile. (closes #10609)
+Files: src/Makefile
+
+Patch 8.2.5154
+Problem: Still mentioning version8, some cosmetic issues.
+Solution: Prefer mentioning version9, cosmetic improvements.
+Files: src/version.c, src/if_tcl.c, src/regexp.c,
+ src/testdir/test_gui.vim, src/os_unix.c, Filelist, src/Makefile
+
+Patch 8.2.5155
+Problem: In diff mode windows may get out of sync. (Gary Johnson)
+Solution: Avoid that the other window scrolls for 'cursorbind'.
+Files: src/move.c, src/testdir/test_diffmode.vim,
+ src/testdir/dumps/Test_diff_scroll_1.dump,
+ src/testdir/dumps/Test_diff_scroll_2.dump
+
+Patch 8.2.5156
+Problem: Search timeout test often fails with FreeBSD.
+Solution: Double the maximum time.
+Files: src/testdir/test_search.vim
+
+Patch 8.2.5157
+Problem: MS-Windows GUI: CTRL-key combinations do not always work.
+Solution: Handle special key combinations better. (closes #10613,
+ closes #10602, closes #10579)
+Files: src/gui_w32.c
+
+Patch 8.2.5158
+Problem: TSTP and INT signal tests are not run with valgrind.
+Solution: Sleep a bit longer. (closes #10614)
+Files: src/testdir/test_signals.vim
+
+Patch 8.2.5159 (after 8.2.5157)
+Problem: Fix for CTRL-key combinations causes more problems than it solves.
+Solution: Roll back the change.
+Files: src/gui_w32.c
+
+Patch 8.2.5160
+Problem: Accessing invalid memory after changing terminal size.
+Solution: Adjust cmdline_row and msg_row to the value of Rows.
+Files: src/term.c
+
+Patch 8.2.5161
+Problem: Might still access invalid memory.
+Solution: Add extra check for negative value.
+Files: src/message.c
+
+Patch 8.2.5162
+Problem: Reading before the start of the line with BS in Replace mode.
+Solution: Check the cursor column is more than zero.
+Files: src/edit.c
+
+Patch 8.2.5163
+Problem: Crash when deleting buffers in diff mode.
+Solution: Recompute diffs later. Skip window without a valid buffer.
+Files: src/diff.c, src/testdir/test_diffmode.vim
+
+Patch 8.2.5164
+Problem: Invalid memory access after diff buffer manipulations.
+Solution: Use zero offset when change removes all lines in a diff block.
+Files: src/diff.c, src/testdir/test_diffmode.vim
+
+Patch 8.2.5165
+Problem: Import test fails because 'diffexpr' isn't reset.
+Solution: Reset 'diffexpr'.
+Files: src/testdir/test_vim9_import.vim
+
+Patch 8.2.5166
+Problem: Test for DiffUpdated fails.
+Solution: Also accept a count of two.
+Files: src/testdir/test_diffmode.vim
+
+Patch 8.2.5167
+Problem: get(Fn, 'name') on funcref returns special byte code.
+Solution: Use the printable name.
+Files: src/evalfunc.c, src/testdir/test_getvar.vim
+
+Patch 8.2.5168
+Problem: Cannot build with Python 3.11.
+Solution: Adjust define for _PyObject_TypeCheck. (Zdenek Dohnal,
+ closes #10627)
+Files: src/if_python3.c
+
+Patch 8.2.5169
+Problem: Nested :source may use NULL pointer.
+Solution: Do not use the NULL pointer.
+Files: src/eval.c, src/testdir/test_vimscript.vim
+
+Patch 8.2.5170
+Problem: Tiny issues.
+Solution: Tiny improvements.
+Files: src/misc1.c, src/screen.c, src/vim.h
+
+Patch 8.2.5171
+Problem: Dependencies and proto files are outdated.
+Solution: Update dependencies and proto files. Avoid errors.
+Files: src/Makefile, src/gui_w32.c, src/os_mswin.c, src/proto/buffer.pro,
+ src/proto/cmdexpand.pro, src/proto/getchar.pro,
+ src/proto/help.pro, src/proto/mbyte.pro, src/proto/option.pro,
+ src/proto/screen.pro, src/proto/syntax.pro,
+ src/proto/textformat.pro, src/proto/textobject.pro,
+ src/proto/time.pro, src/proto/gui_x11.pro, src/proto/if_tcl.pro,
+ src/proto/os_mswin.pro
+
+Patch 8.2.5172
+Problem: "make menu" still uses legacy script.
+Solution: make menu generation script use Vim9 script, fix errors.
+Files: runtime/makemenu.vim
+
+
+==============================================================================
+VERSION 9.1 *version-9.1* *version9.1* *vim-9.1*
+
+This section is about improvements made between version 9.0 and 9.1.
+The release 9.1 is dedicated to Vim's Benevolent dictator for life
+|Bram-Moolenaar|.
+
+This release has hundreds of bug fixes, there are a few new features and there
+are many minor improvements.
+
+Vim9 classes
+------------
+Support for classes and objects in a Vim9 script are added. This is described
+in |vim9-class|. The following features are supported:
+ - Defining classes and instantiating objects
+ - Multiple constructors
+ - Class variables and methods
+ - Object variables and methods
+ - Public and protected access for variables and methods
+ - Constant and final object/class variables
+ - Extending classes (single inheritance)
+ - Interfaces
+ - Abstract classes
+ - Exporting classes
+
+Support for creating a type alias for an existing type is added.
+
+Virtual text
+------------
+Support for adding |virtual-text| to a buffer is added. This is useful for
+language server features (e.g. inlay hints)
+
+Smooth Scroll
+-------------
+Support for scrolling text using screen lines instead of file lines is added.
+Refer to the 'smoothscroll' option.
+
+The EditorConfig (|editorconfig-install|) and the JSON formatting
+(|ft-json-plugin|) plugins are included.
+
+OpenVMS x86_64 platform port: http://www.polarhome.com/vim/
+
+Other improvements *new-other-9.1*
+------------------
+- Support for undercurl (|t_Ce|), double underline (|t_Us|), dotted underline
+ (|t_ds|) and dashed underline (|t_Ds|) termcap entries and
+ highlight modes (|highlight-term|).
+- The 'fillchars' option is now a global-local option and allows to
+ specify the character used for the last window line.
+- The |:vertical| and |:horizontal| modifiers can be used with ":wincmd ="
+ command to equalize windows vertically or horizontally.
+- |:defer| command to defer the execution of a function till the end of a
+ function.
+- Support for closing a tab page using the middle mouse button.
+- Sound support in MacOS.
+- The |prop_remove()| function can now remove multiple text properties.
+- The |items()| function now supports a List or a String argument.
+- The |repeat()| function now supports blob repeat.
+- Command line completion support for |:runtime| command.
+- Support for custom completion using |getcompletion()|.
+- Command-line completion support for option values.
+- Support for multiple "%=" items in 'statusline'.
+- Support for the PmenuKind, PmenuKindSel, PmenuExtra and PmenuExtraSel
+ highlight groups.
+- Text properties can override 'cursorline' highlight.
+- Support for echoing messages in a popup window |:echowindow|.
+- Control scroll behavior when splitting windows 'splitkeep'.
+- Support for mouse scrolling in the MS-Windows console.
+- Support for using different keyboard protocols 'keyprotocol'
+ (xterm |modifyOtherKeys| and Kitty terminal protocol (CSI u) support).
+- Support for UTF-16 string index.
+- Quickfix list items can have associated custom user data.
+- |reverse()| supports reversing a string.
+- 'switchbuf' is used by more commands.
+- |undotree()| can be used with any buffer.
+- |printf()| supports positional arguments.
+- |col()|, |charcol()| and |virtcol()| can be used with different windows.
+- Support for Python3 stable ABI (|python-stable|).
+- Use |jumplist| like a stack 'jumpoptions'.
+- Support for writing extended attributes in Linux (|xattr|).
+- 'errorformat' supports parsing a buffer number ("%b").
+- Support for building the python interface using Python 3.12.
+- |matchaddpos()| is no longer limited to 8 positions.
+- |readblob()| allows to read part of a file.
+- 'shortmess' allows to suppress "scanning" messages.
+- Add the XChaCha20v2 encryption method 'cryptmethod'.
+- Add support for testing syntax files.
+- Support "**" for filename expansion with bash using globstar setting.
+- Add quadruple prime digraph using 4'.
+- Better high dpi support on Windows.
+- Various fixes for unsafe memory access, memory leaks, buffer overflows
+ and potential crashes.
+- Termdebug: Support for the variables window (|termdebug_variables_window|),
+ moving up/down the stack frames (|termdebug-frames|) and setting temporary
+ breakpoints (|:Tbreak|).
+- xxd: support for using colors in the hex dump output (xxd -R).
+- xxd: reversing a bit dump (xxd -r).
+- xxd: customize the variable name used in the C include output (xxd -n).
+
+Changed *changed-9.1*
+-------
+- The features |++builtin_terms|, |+cmdline_info|, |+cmdwin|, |+file_in_path|,
+ |+float|, |+path_extra|, |+textobjects|, |+wildignore| and |+wildmenu| are
+ available in all the builds.
+- Support for Windows-XP is dropped.
+- Support for VisVim is removed.
+- The "small" and "big" builds are dropped in favor of "tiny" and "huge"
+ builds.
+- Mention the detected 'keyprotocol' on ":verbose map" when listing mappings.
+- The optional Content-Type header is removed from the LSP messages.
+- |charidx()| returns the character length when the index is one more than the
+ last byte index.
+- Ctrl-Q works like Ctrl-V in replace mode.
+- |popup_filter_menu()| now wraps around.
+- |popup_create()| now aborts on an error.
+- |g<End>| now jumps to the last non-blank character.
+- dot and hyphen are supported in highlight group names.
+- |executable()| resolves symlinks on MS-Windows.
+- Ruby 1.8 support is dropped.
+- 'ttyfast' is always set.
+- |virtcol2col()| returns the first byte for a multi-byte character.
+- |i_CTRL-O| resets Select Mode.
+- |mode()| returns more submodes.
+- r with CTRL-C on a visual area replaces using CTRL-C consistently.
+- The matchparen plugin no longer uses hard coded match id 3.
+- The Statusline no longer uses hard coded values "^" and "=" if the
+ highlighting groups for the statusline have been cleared.
+- 'maxfuncdepth' setting is also used for the maximum callback depth.
+- Migrate to autoconf 2.71.
+- Start using C99 feature (declare variable in for loops).
+
+Added *added-9.1*
+-----
+
+Various syntax, indent and other plugins were added.
+
+Functions: ~
+
+|err_teapot()| produce error 418 or 503
+|getbufoneline()| get a single line from the specified buffer
+|getcellwidths()| get character cell width overrides
+|getmouseshape()| get name of the current mouse shape
+|getscriptinfo()| get list of sourced vim scripts
+|indexof()| index in a List or Blob of a true expression
+|instanceof()| check if a variable is an instance of a given class
+|keytrans()| translate internal key codes to be usable with |:map|
+|popup_findecho()| get window ID for popup used for |:echowindow|
+|setcmdline()| set the current command line
+|strutf16len()| number of UTF-16 code units in a string
+|swapfilelist()| list of existing swap files in 'directory'
+|test_mswin_event()| generate an MS-Windows event for testing
+|utf16idx()| UTF-16 index of a byte in a string
+
+
+Autocommands: ~
+
+|TextChangedT| after a change was made to the text in Terminal mode
+|WinResized| after a window in the current tab page is resized
+
+
+Commands: ~
+
+|:abstract| define a Vim9 abstract class
+|:class| start of a class specification
+|:defer| call function when current function is done
+|:echowindow| same as :echomsg, but use a popup window
+|:endinterface| end of an interface specification
+|:endclass| end of a class specification
+|:horizontal| following window command works horizontally
+|:interface| start of an interface specification
+|:public| prefix for a class or object member
+|:static| prefix for a class member or function
+|:this| prefix for an object member
+|:type| create a type alias
+
+
+Options: ~
+
+'endoffile' write CTRL-Z at end of the file
+'jumpoptions' specifies how jumping is done
+'keyprotocol' what keyboard protocol to use for what terminal
+'lispoptions' changes how Lisp indenting is done
+'showcmdloc' where to show (partial) command
+'smoothscroll' scroll by screen lines when 'wrap' is set
+'splitkeep' determines scroll behavior for split windows
+
+==============================================================================
+PATCHES *patches-9.1* *bug-fixes-9.1*
+ *patches-after-9.0*
+
+The list of patches that got included since 9.0.0. This includes all the new
+features, but does not include runtime file changes (syntax, indent, ftplugin,
+documentation, etc.)
+
+Note: authorship and the list of changed files is left out and only visible
+through `git log` for each commit.
+
+Patch 9.0.0001
+Problem: Travis CI is no longer used.
+Solution: Delete the Travis CI configuration. (Hugo Osvaldo Barrera,
+ closes #10636)
+
+Patch 9.0.0002
+Problem: Map functionality outside of map.c.
+Solution: Move f_hasmapto() to map.c. Rename a function. (closes #10611)
+
+Patch 9.0.0003
+Problem: Functions are global while they could be local.
+Solution: Add "static". Add a few tests. (Yegappan Lakshmanan,
+ closes #10612)
+
+Patch 9.0.0004
+Problem: Plural messages not translated properly.
+Solution: Use ngettext() in a few more places. (Matvey Tarasov,
+ closes #10606)
+
+Patch 9.0.0005
+Problem: Hare files are not recognized.
+Solution: Add a filetype pattern. (Hugo Osvaldo Barrera, closes #10630)
+
+Patch 9.0.0006
+Problem: Not all Visual Basic files are recognized.
+Solution: Change detection of *.cls files. (Doug Kearns)
+
+Patch 9.0.0007
+Problem: No support for double, dotted and dashed underlines.
+Solution: Add the termcap entries and highlight modes. (closes #9553)
+
+Patch 9.0.0008
+Problem: Cannot specify the variable name for "xxd -i".
+Solution: Add the "-name" argument. (David Gow, closes #10599)
+
+Patch 9.0.0009
+Problem: Going past the end of a menu item with only modifier.
+Solution: Check for NUL.
+
+Patch 9.0.0010
+Problem: Returning 0 for has('patch-9.0.0') is inconsistent.
+Solution: Make it return 1. (closes #10640)
+
+Patch 9.0.0011
+Problem: Reading beyond the end of the line with put command.
+Solution: Adjust the end mark position.
+
+Patch 9.0.0012
+Problem: Signature files not detected properly.
+Solution: Add a function to better detect signature files. (Doug Kearns)
+
+Patch 9.0.0013
+Problem: Reproducing memory access errors can be difficult.
+Solution: When testing, copy each line to allocated memory, so that valgrind
+ can detect accessing memory before and/or after it. Fix uncovered
+ problems.
+
+Patch 9.0.0014
+Problem: Missing part of the test override change.
+Solution: Add the missing part.
+
+Patch 9.0.0015
+Problem: With EXITFREE defined terminal menus are not cleared.
+Solution: Also clear terminal menus. Remove condition that is always true.
+ (closes #10641)
+
+Patch 9.0.0016
+Problem: Comparing line pointer for 'breakindent' is not reliable.
+Solution: Make a copy of the line.
+
+Patch 9.0.0017
+Problem: Accessing memory beyond the end of the line.
+Solution: Stop Visual mode when closing a window.
+
+Patch 9.0.0018
+Problem: Going over the end of the typeahead.
+Solution: Put a NUL after the typeahead.
+
+Patch 9.0.0019
+Problem: Timers test not run where possible.
+Solution: Adjust platform checks. (closes #10645)
+
+Patch 9.0.0020
+Problem: With some completion reading past end of string.
+Solution: Check the length of the string.
+
+Patch 9.0.0021
+Problem: Invalid memory access when adding word with a control character to
+ the internal spell word list.
+Solution: Disallow adding a word with control characters or a trailing
+ slash.
+
+Patch 9.0.0022
+Problem: Spell test fails.
+Solution: Expect new error is given.
+
+Patch 9.0.0023
+Problem: On Solaris timer_create() exists but does not work.
+Solution: Adjust the configure check to run the test program.
+ (closes #10647)
+
+Patch 9.0.0024
+Problem: May access part of typeahead buf that isn't filled.
+Solution: Check length of typeahead.
+
+Patch 9.0.0025
+Problem: Accessing beyond allocated memory when using the cmdline window in
+ Ex mode.
+Solution: Use "*" instead of "'<,'>" for Visual mode.
+
+Patch 9.0.0026
+Problem: Accessing freed memory with diff put.
+Solution: Bail out when diff pointer is no longer valid.
+
+Patch 9.0.0027
+Problem: The command line test is getting quite big.
+Solution: Move command line window tests to a separate file.
+
+Patch 9.0.0028
+Problem: MS-Windows: tests fail if there is a stray "runtime" directory.
+Solution: Only use a "runtime" directory if it contains "defaults.vim".
+
+Patch 9.0.0029
+Problem: The bitmaps/vim.ico file is not in the distribution.
+Solution: Add it back to the distribution. Adjust the build rules to have
+ it end up in the right place.
+
+Patch 9.0.0030
+Problem: Matchfuzzy test depends on path of current directory.
+Solution: Use fnamemodify() to remove the path. (Robin Becker,
+ closes #10650)
+
+Patch 9.0.0031
+Problem: <cmod> of user command does not have correct verbose value.
+Solution: Use the value from the command modifier. (closes #10651)
+
+Patch 9.0.0032
+Problem: In the quickfix window 'cursorline' overrules QuickFixLine
+ highlighting.
+Solution: Combine the attributes. Add a test. (closes #10654)
+
+Patch 9.0.0033
+Problem: On a Belgian keyboard CTRL-[ does not work.
+Solution: Handle GDK_KEY_dead_circumflex. (Anton Sharonov, closes #10658)
+
+Patch 9.0.0034
+Problem: Spell tests do not always clear the word list.
+Solution: Clear the word list in TearDown(). (closes #10659)
+
+Patch 9.0.0035
+Problem: Spell dump may go beyond end of an array.
+Solution: Limit the word length.
+
+Patch 9.0.0036
+Problem: 'fillchars' cannot have window-local values.
+Solution: Make 'fillchars' global-local. (closes #5206)
+
+Patch 9.0.0037
+Problem: Build error.
+Solution: Add missing change.
+
+Patch 9.0.0038
+Problem: 'listchars' test fails.
+Solution: Use window-local value after setting the global value
+
+Patch 9.0.0039
+Problem: Not all systems have GDK_KEY_dead_circumflex. (Hisashi T Fujinaka)
+Solution: Add an #ifdef.
+
+Patch 9.0.0040
+Problem: Use of set_chars_option() is confusing.
+Solution: Add "apply" argument to store the result or not. Merge similar
+ code.
+
+Patch 9.0.0041
+Problem: A couple of filetype patterns do not have "*" before "/etc".
+Solution: Add the star. (Jonas Strittmatter, closes #10662)
+
+Patch 9.0.0042
+Problem: Missing change for filetype detection.
+Solution: Include change to detect guile from shebang line.
+
+Patch 9.0.0043
+Problem: Insufficient testing for bracket commands.
+Solution: Add a few more tests. (closes #10668)
+
+Patch 9.0.0044
+Problem: Typos in comments, wrapping lines.
+Solution: Adjust comments. Wrap lines.
+
+Patch 9.0.0045
+Problem: Reading past end of completion with a long line and 'infercase'
+ set.
+Solution: Allocate the string if needed.
+
+Patch 9.0.0046
+Problem: Reading past end of completion with duplicate match.
+Solution: Check string length
+
+Patch 9.0.0047
+Problem: Using freed memory with recursive substitute.
+Solution: Always make a copy for reg_prev_sub.
+
+Patch 9.0.0048
+Problem: Cursor in wrong column with mouse click after concealed text.
+Solution: Store the text column when drawing text.
+
+Patch 9.0.0049
+Problem: Csv and tsv files are not recognized.
+Solution: Add patterns fo csv and tsv files. (Leandro Lourenci,
+ closes #10680)
+
+Patch 9.0.0050
+Problem: Split else-of is confusing.
+Solution: Join the lines. (closes #10696)
+
+Patch 9.0.0051
+Problem: Using CTRL-C with :append may hang Vim.
+Solution: Reset got_int. (closes #10729, closes #10728)
+
+Patch 9.0.0052
+Problem: "zG" may throw an error if invalid character follows.
+Solution: Pass the word length to valid_spell_word(). (Ken Takata,
+ closes #10737)
+
+Patch 9.0.0053
+Problem: E1281 not tested with the old regexp engine.
+Solution: Loop over the values of 'regexp'. (Dominique Pellé, closes #10695)
+
+Patch 9.0.0054
+Problem: Compiler warning for size_t to int conversion.
+Solution: Add type cast. (Mike Williams, closes #10741)
+
+Patch 9.0.0055
+Problem: Bitbake files are not detected.
+Solution: Add bitbake filetype detection by file name and contents. (Gregory
+ Anders, closes #10697)
+
+Patch 9.0.0056
+Problem: Wrong line number reported when :cexpr fails in :def function.
+Solution: Set line_number before executing :cexpr. (closes #10735)
+
+Patch 9.0.0057
+Problem: has('patch-xxx') returns true.
+Solution: Check for digit. (closes #10751)
+
+Patch 9.0.0058
+Problem: Win32: cannot test low level events.
+Solution: Add "sendevent" to test_gui_event(). (Yegappan Lakshmanan,
+ closes #10679)
+
+Patch 9.0.0059
+Problem: Test file has wrong name.
+Solution: Rename the file. Various small fixes. (closes #10674)
+
+Patch 9.0.0060
+Problem: Accessing uninitialized memory when completing long line.
+Solution: Terminate string with NUL.
+
+Patch 9.0.0061
+Problem: ml_get error with nested autocommand.
+Solution: Also check line numbers for a nested autocommand. (closes #10761)
+
+Patch 9.0.0062
+Problem: Compiler warnings for signed/unsigned char.
+Solution: Add type casts. (John Marriott)
+
+Patch 9.0.0063
+Problem: Too many type casts for dict_get functions.
+Solution: Change the key argument from "char_u *" to "char *".
+
+Patch 9.0.0064
+Problem: Confusing error when using "q:" in command line window.
+Solution: Check for the situation and give a better error message.
+ (closes #10756)
+
+Patch 9.0.0065
+Problem: Cross-compiling doesn't work because of timer_create check.
+Solution: Use AC_CACHE_CHECK(). (Richard Purdie, closes #10777)
+
+Patch 9.0.0066
+Problem: Switching window unnecessarily when getting buffer options.
+Solution: Do not switch window when getting buffer options. (closes #10767)
+
+Patch 9.0.0067
+Problem: Cannot show virtual text.
+Solution: Initial changes for virtual text support, using text properties.
+
+Patch 9.0.0068
+Problem: Build fails with tiny features.
+Solution: Add #ifdef.
+
+Patch 9.0.0069
+Problem: Leaking memory when using text prop with inserted text.
+Solution: Clear the growarray with text.
+
+Patch 9.0.0070
+Problem: Using utfc_ptr2char_len() when length is negative.
+Solution: Check value of length. (closes #10760)
+
+Patch 9.0.0071
+Problem: Command overlaps with printed text in scrollback.
+Solution: Clear until end-of-line and use correct message chunk.
+ (closes #10765, closes #10764)
+
+Patch 9.0.0072
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize it. (John Marriott)
+
+Patch 9.0.0073
+Problem: Too many files recognized as bsdl.
+Solution: Use pattern "*.bsd" instead of "*bsd". (Martin Tournoij,
+ closes #10783)
+
+Patch 9.0.0074
+Problem: Coverity warns for double free.
+Solution: Reset cts_text_prop_count when freeing cts_text_props.
+
+Patch 9.0.0075
+Problem: Some compilers warn for using an uninitialized variable. (Tony
+ Mechelynck)
+Solution: Initialize the variable.
+
+Patch 9.0.0076
+Problem: No test for what patch 8.1.1424 fixes.
+Solution: Add a test. (closes #10789)
+
+Patch 9.0.0077
+Problem: When switching window in autocmd the restored cursor position may
+ be wrong.
+Solution: Do not restore the cursor if it was not set. (closes #10775)
+
+Patch 9.0.0078
+Problem: Star register is changed when deleting and both "unnamed" and
+ "unnamedplus" are in 'clipboard'.
+Solution: Make the use of the star register work as documented. (Ernie Rael,
+ closes #10669)
+
+Patch 9.0.0079
+Problem: Error in autoload script not reported for 'foldexpr'.
+Solution: Reset "emsg_off" when auto-loading a script. (closes #10685)
+
+Patch 9.0.0080
+Problem: Compiler warning for size_t to int conversion.
+Solution: Add type casts. (Mike Williams, closes #10795)
+
+Patch 9.0.0081
+Problem: Command line completion of user command may have duplicates.
+ (Dani Dickstein)
+Solution: Skip global user command if an identical buffer-local one is
+ defined. (closes #10797)
+
+Patch 9.0.0082
+Problem: Cannot interrupt global command from command line.
+Solution: Reset got_int in another place. (closes #10739)
+
+Patch 9.0.0083
+Problem: ModeChanged event not triggered when leaving the cmdline window.
+Solution: Call may_trigger_modechanged(). (closes #10791)
+
+Patch 9.0.0084
+Problem: Using "terraform" filetype for .tfvars file is bad.
+Solution: use "terraform-vars", so that different completion and other
+ mechanisms can be used. (Radek Simko, closes #10755)
+
+Patch 9.0.0085
+Problem: ":write" fails after ":file name" and the ":edit".
+Solution: Reset BF_NOTEDITED when using ":edit". (closes #10790)
+
+Patch 9.0.0086
+Problem: Tabline is not redrawn when entering command line.
+Solution: Set "redraw_tabline". (closes #10771)
+
+Patch 9.0.0087
+Problem: MS-Windows: CTRL-[ on Belgian keyboard does not work like Esc.
+Solution: Figure out what the key code means. (Anton Sharonov,
+ closes #10687, closes #10454)
+
+Patch 9.0.0088
+Problem: Pattern for detecting bitbake files is not sufficient.
+Solution: Adjust the pattern. (Gregory Anders, closes #10743)
+
+Patch 9.0.0089
+Problem: Fuzzy argument completion doesn't work for shell commands.
+Solution: Check for cmdidx not being CMD_bang. (Yegappan Lakshmanan,
+ closes #10769)
+
+Patch 9.0.0090
+Problem: No error when assigning bool to a string option with setwinvar().
+Solution: Give an error (closes #10766)
+
+Patch 9.0.0091
+Problem: Duplicate error number.
+Solution: Use unique error number.
+
+Patch 9.0.0092
+Problem: Plugins cannot change v:completed_item.
+Solution: Make v:completed_item writeable. (Shougo Matsushita,
+ closes #10801)
+
+Patch 9.0.0093
+Problem: Sway config files are recognized as i3config.
+Solution: Recognize swayconfig separately. (James Eapen, closes #10672)
+
+Patch 9.0.0094
+Problem: Cursor restored unexpected with nested autocommand.
+Solution: Do not restore the cursor when it was moved intentionally.
+ (closes #10780)
+
+Patch 9.0.0095
+Problem: Conditions are always true.
+Solution: Remove useless conditions. (closes #10802)
+
+Patch 9.0.0096
+Problem: Flag "new_value_alloced" is always true.
+Solution: Remove "new_value_alloced". (closes #10792)
+
+Patch 9.0.0097
+Problem: Long quickfix line is truncated for :clist.
+Solution: Allocate a buffer if needed.
+
+Patch 9.0.0098
+Problem: missing include file in timer_create configure check.
+Solution: Include stdlib.h.
+
+Patch 9.0.0099
+Problem: Scrollback can be wrong after redrawing the command line.
+Solution: Clear unfinished scrollback when redrawing. (closes #10807)
+
+Patch 9.0.0100
+Problem: Get hit-enter prompt for system() when '!' is in 'guioptions'.
+Solution: Do not call wait_return() when not redrawing. (closes #3327)
+
+Patch 9.0.0101
+Problem: Invalid memory access in diff mode with "dp" and undo.
+Solution: Make sure the line number does not go below one.
+
+Patch 9.0.0102
+Problem: Reading past end of line with insert mode completion.
+Solution: Check text length.
+
+Patch 9.0.0103
+Problem: If running configure with cached results -lrt may be missing.
+Solution: Use two cache variables, one without and one with -lrt.
+ (closes #10799) Swap checks to avoid adding -lrt unnecessarily.
+
+Patch 9.0.0104
+Problem: Going beyond allocated memory when evaluating string constant.
+Solution: Properly skip over <Key> form.
+
+Patch 9.0.0105
+Problem: Illegal memory access when pattern starts with illegal byte.
+Solution: Do not match a character with an illegal byte.
+
+Patch 9.0.0106
+Problem: Illegal byte regexp test doesn't fail when fix is reversed.
+Solution: Make sure illegal bytes end up in sourced script file.
+
+Patch 9.0.0107
+Problem: Condition always has the same value.
+Solution: Remove the condition.
+
+Patch 9.0.0108
+Problem: Configure check for timer_create may give wrong error.
+Solution: Give a warning instead of an error.
+
+Patch 9.0.0109
+Problem: Writing over the end of a buffer on stack when making list of
+ spell suggestions.
+Solution: Make sure suggested word is not too long. (closes #10812)
+
+Patch 9.0.0110
+Problem: Help tag generation picks up words in code examples.
+Solution: Skip over examples. (Carlo Teubner, closes #10813)
+
+Patch 9.0.0111
+Problem: "nocombine" is missing from synIDattr().
+Solution: Add "nocombine". (Muni Tanjim, closes #10816)
+
+Patch 9.0.0112
+Problem: MS-Windows: test fails because file already exists.
+Solution: Wait a little while until the file is gone.
+
+Patch 9.0.0113
+Problem: has() is not strict about parsing the patch version.
+Solution: Check the version more strictly. (Ken Takata, closes #10752)
+
+Patch 9.0.0114
+Problem: The command line takes up space even when not used.
+Solution: Allow for 'cmdheight' to be set to zero. (Shougo Matsushita,
+ closes #10675, closes #940)
+
+Patch 9.0.0115
+Problem: When 'cmdheight' is zero pressing ':' may scroll a window.
+Solution: Add the made_cmdheight_nonzero flag and set 'scrolloff' to zero.
+
+Patch 9.0.0116
+Problem: Virtual text not displayed if 'signcolumn' is "yes".
+Solution: Set c_extra and c_final to NUL.
+
+Patch 9.0.0117
+Problem: Text of removed textprop with text is not freed.
+Solution: Free the text when the property is removed. Reduce the array size
+ to ignore NULLs at the end.
+
+Patch 9.0.0118
+Problem: No test for what patch 9.0.0155 fixes.
+Solution: Add a test. Fix typos. (closes #10822)
+
+Patch 9.0.0119
+Problem: Tiny chance that creating a backup file fails.
+Solution: Check for EEXIST error. (Ken Takata, closes #10821)
+
+Patch 9.0.0120
+Problem: MS-Windows GUI: cannot use AltGr + Space.
+Solution: Check for VK_MENU instead of VK_LMENU. (Anton Sharonov,
+ closes #10820, closes #10753)
+
+Patch 9.0.0121
+Problem: Cannot put virtual text after or below a line.
+Solution: Add "text_align" and "text_wrap" arguments.
+
+Patch 9.0.0122
+Problem: Breakindent test fails.
+Solution: Fix condition.
+
+Patch 9.0.0123
+Problem: Cannot build with small features.
+Solution: Add #ifdef.
+
+Patch 9.0.0124
+Problem: Code has more indent than needed.
+Solution: Use continue and return statements. (closes #10824)
+
+Patch 9.0.0125
+Problem: Cursor positioned wrong with virtual text after the line.
+Solution: Clear cts_with_trailing.
+
+Patch 9.0.0126
+Problem: Expanding file names fails in directory with more than 255
+ entries.
+Solution: Use an int instead of char_u to count. (John Drouhard,
+ closes #10818)
+
+Patch 9.0.0127
+Problem: Unused variable.
+Solution: Remove the variable. (closes #10829)
+
+Patch 9.0.0128
+Problem: Coverity complains about possible double free.
+Solution: Clear the pointer to avoid warnings.
+
+Patch 9.0.0129
+Problem: Compiler warning for int/size_t usage.
+Solution: Add a type cast. (Mike Williams, closes #10830)
+
+Patch 9.0.0130
+Problem: Cursor position wrong when inserting around virtual text.
+Solution: Update the cursor position properly.
+
+Patch 9.0.0131
+Problem: Virtual text with Tab is not displayed correctly.
+Solution: Change any Tab to a space.
+
+Patch 9.0.0132
+Problem: Multi-byte characters in virtual text not handled correctly.
+Solution: Count screen cells instead of bytes.
+
+Patch 9.0.0133
+Problem: Virtual text after line moves to joined line. (Yegappan
+ Lakshmanan)
+Solution: When joining lines only keep virtual text after the last line.
+
+Patch 9.0.0134
+Problem: No test for text property with column zero.
+Solution: Add a test. Add message to assert for no open popups.
+
+Patch 9.0.0135
+Problem: Comment about tabpage line above the wrong code.
+Solution: Move the comment. (closes #10836)
+
+Patch 9.0.0136
+Problem: After CTRL-Left-mouse click a mouse scroll also has CTRL.
+Solution: Reset orig_mouse_code also for wheel events. (closes #10840)
+
+Patch 9.0.0137
+Problem: Debugger test may fail when $CWD is very long.
+Solution: Skip the test if the directory name is too long. (James McCoy,
+ closes #10837)
+
+Patch 9.0.0138
+Problem: Not enough characters accepted for 'spellfile'.
+Solution: Add vim_is_fname_char() and use it for 'spellfile'.
+
+Patch 9.0.0139
+Problem: Truncating virtual text after a line not implemented.
+ Cursor positioning wrong with Newline in the text.
+Solution: Implement truncating. Disallow control characters in the text.
+ (closes #10842)
+
+Patch 9.0.0140
+Problem: execute() does not use the "legacy" command modifier.
+Solution: pass the command modifier in sticky_cmdmod_flags. (Kota Kato,
+ closes #10845)
+
+Patch 9.0.0141
+Problem: "delmenu" does not remove autocommands. Running menu test function
+ alone fails.
+Solution: Delete autocommands Make sure there is at least one menu.
+ (closes #10848)
+
+Patch 9.0.0142
+Problem: Crash when adding and removing virtual text. (Ben Jackson)
+Solution: Check that the text of the text property still exists.
+
+Patch 9.0.0143
+Problem: Cursor positioned after virtual text in empty line.
+Solution: Keep cursor in the first column. (closes #10786)
+
+Patch 9.0.0144
+Problem: Text property cannot override 'cursorline' highlight.
+Solution: Add the "override" flag to prop_type_add(). (closes #5533,
+ closes #8225).
+
+Patch 9.0.0145
+Problem: Substitute that joins lines drops text properties.
+Solution: Move text properties of the last line to the new line.
+
+Patch 9.0.0146
+Problem: Missing part of change for "override" flag.
+Solution: Add the missing change.
+
+Patch 9.0.0147
+Problem: Cursor positioned wrong after two text properties with virtual
+ text and "below" alignment. (Tim Pope)
+Solution: Do not stop after a text property using MAXCOL. (closes #10849)
+
+Patch 9.0.0148
+Problem: A "below" aligned text property gets 'showbreak' displayed.
+Solution: Do not use 'showbreak' before or in virtual text. (issue #10851)
+
+Patch 9.0.0149
+Problem: Test for fuzzy completion fails sometimes.
+Solution: Use a more specific file name to minimize the chance of matching a
+ random directory name. (closes #10854)
+
+Patch 9.0.0150
+Problem: Error for using #{ in an expression is a bit confusing.
+Solution: Mention that this error is only given for an expression.
+ Avoid giving the error more than once. (closes #10855)
+
+Patch 9.0.0151
+Problem: A "below" aligned text property does not work with 'nowrap'.
+Solution: Start a new screen line to display the virtual text.
+ (closes #10851)
+
+Patch 9.0.0152
+Problem: Warning for unused argument in small build.
+Solution: Add "UNUSED".
+
+Patch 9.0.0153
+Problem: No fold and sign column for virtual text with "below" align and
+ 'nowrap'.
+Solution: Go back to draw state WL_START when moving to the next line.
+ (closes #10851)
+
+Patch 9.0.0154
+Problem: Text properties wrong after splitting a line.
+Solution: Check for text properties after the line. (closes #10857)
+
+Patch 9.0.0155
+
+Patch 9.0.0156
+Problem: Giving E1170 only in an expression is confusing.
+Solution: Give E1170 for any "#{ comment". (closes #10855)
+
+Patch 9.0.0157
+Problem: 'showbreak' displayed below truncated "after" text prop.
+Solution: Suppress 'showbreak' when "after" prop doesn't wrap.
+
+Patch 9.0.0158
+Problem: With 'nowrap' "below" property not displayed correctly.
+Solution: Adjust virtual text with 'nowrap', do not truncate.
+
+Patch 9.0.0159
+Problem: Cannot build with small features.
+Solution: Check for E1170 only with FEAT_EVAL.
+
+Patch 9.0.0160
+Problem: Some diff mode tests fail.
+Solution: Only advance "ptr" when a text property follows.
+
+Patch 9.0.0161
+Problem: Warning for uninitialized variable. (Tony Mechelynck)
+Solution: Initialize line_attr_save.
+
+Patch 9.0.0162
+Problem: Text property "below" gets indent if 'breakindent' is set. (Tim
+ Pope)
+Solution: Do not put indent before text property. (closes #10859)
+
+Patch 9.0.0163
+Problem: Text property not adjusted for text inserted with "p".
+Solution: Adjust column and length of text properties.
+
+Patch 9.0.0164
+Problem: Using freed memory with put command.
+Solution: Get byte offset before replacing the line.
+
+Patch 9.0.0165
+Problem: Looking up a text property type by ID is slow.
+Solution: Keep an array of property types sorted on ID.
+
+Patch 9.0.0166
+Problem: When using text properties the line text length is computed twice.
+Solution: If the text length was already computed don't do it again.
+
+Patch 9.0.0167
+Problem: Checking for text properties could be a bit more efficient.
+Solution: Return early when there are no text properties. Update TODO
+ items.
+
+Patch 9.0.0168
+Problem: Cursor positioned wrong with two virtual text properties close
+ together. (Ben Jackson)
+Solution: Add the original size, not the computed one. (closes #10864)
+
+Patch 9.0.0169
+Problem: Insufficient testing for line2byte() with text properties.
+Solution: Add tests with a lot of text.
+
+Patch 9.0.0170
+Problem: Various minor code formatting issues.
+Solution: Improve code formatting.
+
+Patch 9.0.0171
+Problem: Quickfix line highlight is overruled by 'cursorline'.
+Solution: Reverse the combination of attributes. (closes #10654)
+
+Patch 9.0.0172
+Problem: Trying to allocate zero bytes.
+Solution: Do not allocate the proptype array when there are none.
+ (closes #10867)
+
+Patch 9.0.0173
+Problem: Assert fails only on MS-Windows.
+Solution: Disable the assert for now.
+
+Patch 9.0.0174
+Problem: No error for using "#{ comment" in a compiled function.
+Solution: Make error checking for "#{" consistent. (closes #10855)
+
+Patch 9.0.0175
+Problem: Spell checking for capital not working with trailing space.
+Solution: Do not calculate cap_col at the end of the line. (Christian
+ Brabandt, closes #10870, issue #10838)
+
+Patch 9.0.0176
+Problem: Checking character options is duplicated and incomplete.
+Solution: Move checking to check_chars_options(). (closes #10863)
+
+Patch 9.0.0177
+Problem: Cursor position wrong with 'virtualedit' and mouse click after end
+ of the line. (Hermann Mayer)
+Solution: Do not use ScreenCols[] when 'virtualedit' is active.
+ (closes #10868)
+
+Patch 9.0.0178
+Problem: Cursor position wrong with virtual text before Tab.
+Solution: Use the byte length, not the cell with, to compare the column.
+ Correct tab size after text prop. (closes #10866)
+
+Patch 9.0.0179
+Problem: Cursor position wrong with wrapping virtual text in empty line.
+Solution: Adjust handling of an empty line. (closes #10875)
+
+Patch 9.0.0180
+Problem: Stray logfile appears when running tests.
+Solution: Remove ch_logfile() calls.
+
+Patch 9.0.0181
+Problem: Textprop test with line2byte() fails on MS-Windows.
+Solution: Fix updating chunks in ml_delete_int().
+
+Patch 9.0.0182
+Problem: Quarto files are not recognized.
+Solution: Recognize quarto files by the extension. (Jonas Strittmatter,
+ closes #10880)
+
+Patch 9.0.0183
+Problem: Extra space after virtual text when 'linebreak' is set.
+Solution: Do not count virtual text when getting linebreak value.
+ (closes #10884)
+
+Patch 9.0.0184
+Problem: Virtual text prop highlight continues after truncation.
+Solution: Recompute the length of attributes.
+
+Patch 9.0.0185
+Problem: Virtual text does not show if there is a text prop at same
+ position. (Ben Jackson)
+Solution: Fix the sorting of properties. (closes #10879)
+
+Patch 9.0.0186
+Problem: Virtual text without highlighting does not show. (Ben Jackson)
+Solution: Use a text property when it has highlighting or when it has text.
+ (closes #10878)
+
+Patch 9.0.0187
+Problem: Command line height changes when maximizing window height.
+Solution: Do not change the command line height. (closes #10885)
+
+Patch 9.0.0188
+Problem: Strange effects when using virtual text with "text_align" and
+ non-zero column. (Martin Tournoij)
+Solution: Give an error. (closes #10888)
+
+Patch 9.0.0189
+Problem: Invalid memory access for text prop without highlight.
+Solution: Check for a valid highlight ID.
+
+Patch 9.0.0190
+Problem: The way 'cmdheight' can be made zero is inconsistent.
+Solution: Only make 'cmdheight' zero when setting it explicitly, not when
+ resizing windows. (closes #10890)
+
+Patch 9.0.0191
+Problem: Messages test fails; window size incorrect when 'cmdheight' is
+ made smaller.
+Solution: Properly cleanup after test with cmdheight zero. Resize windows
+ correctly when 'cmdheight' gets smaller.
+
+Patch 9.0.0192
+Problem: Possible invalid memory access when 'cmdheight' is zero. (Martin
+ Tournoij)
+Solution: Avoid going over the end of w_lines[] when w_height is Rows.
+ (closes #10882)
+
+Patch 9.0.0193
+Problem: Search and match highlight interfere with virtual text highlight.
+ (Ben Jackson)
+Solution: Check for match highlight after text properties. Reset and
+ restore search highlight when showing virtual text.
+ (closes #10892)
+
+Patch 9.0.0194
+Problem: Cursor displayed in wrong position after removing text prop. (Ben
+ Jackson)
+Solution: Invalidate the cursor position. (closes #10898)
+
+Patch 9.0.0195
+Problem: Metafun files are not recognized.
+Solution: Add filetype detection patterns.
+
+Patch 9.0.0196
+Problem: Finding value in list may require a for loop.
+Solution: Add indexof(). (Yegappan Lakshmanan, closes #10903)
+
+Patch 9.0.0197
+Problem: Astro files are not detected.
+Solution: Add a pattern to match Astro files. (Emilia Zapata, closes #10904)
+
+Patch 9.0.0198
+Problem: ml_get error when switching buffer in Visual mode.
+Solution: End Visual mode when switching buffer. (closes #10902)
+
+Patch 9.0.0199
+Problem: Cursor position wrong with two right-aligned virtual texts.
+Solution: Add the padding for right-alignment. (issue #10906)
+
+Patch 9.0.0200
+Problem: cursor in a wrong position if 'wrap' is off and using two right
+ aligned text props in one line.
+Solution: Count an extra line for a right aligned text property after a
+ below or right aligned text property. (issue #10909)
+
+Patch 9.0.0201
+Problem: CursorLine highlight overrules virtual text highlight.
+Solution: Let extra attribute overrule line attribute. (closes #10909)
+
+Patch 9.0.0202
+Problem: Code and help for indexof() is not ideal.
+Solution: Refactor the code, improve the help. (Yegappan Lakshmanan,
+ closes #10908)
+
+Patch 9.0.0203
+Problem: Confusing variable name.
+Solution: Use "prim_aep" instead of "spell_aep".
+
+Patch 9.0.0204
+Problem: indexof() may leak memory.
+Solution: Free allocated values. (Yegappan Lakshmanan, closes #10916)
+
+Patch 9.0.0205
+Problem: Cursor in wrong position when inserting after virtual text. (Ben
+ Jackson)
+Solution: Put the cursor after the virtual text, where the text will be
+ inserted. (closes #10914)
+
+Patch 9.0.0206
+Problem: Redraw flags are not named specifically.
+Solution: Prefix "UPD_" to the flags, for UPDate_screen().
+
+Patch 9.0.0207
+Problem: Stacktrace not shown when debugging.
+Solution: Set msg_scroll in msg_source(). (closes #10917)
+
+Patch 9.0.0208
+Problem: The override flag has no effect for virtual text. (Ben Jackson)
+Solution: Make the override flag work. (closes #10915)
+
+Patch 9.0.0209
+Problem: Build error with small features.
+Solution: Add #ifdef.
+
+Patch 9.0.0210
+Problem: 'list' mode does not work properly with virtual text.
+Solution: Show the "$" at the right position. (closes #10913)
+
+Patch 9.0.0211
+Problem: Invalid memory access when compiling :lockvar.
+Solution: Don't read past the end of the line.
+
+Patch 9.0.0212
+Problem: Invalid memory access when compiling :unlet.
+Solution: Don't read past the end of the line.
+
+Patch 9.0.0213
+Problem: Using freed memory with error in assert argument.
+Solution: Make a copy of the error.
+
+Patch 9.0.0214
+Problem: Splitting a line may duplicate virtual text. (Ben Jackson)
+Solution: Don't duplicate a text property with virtual text. Make
+ auto-indenting work better. (closes #10919)
+
+Patch 9.0.0215
+Problem: Not passing APC_INDENT flag.
+Solution: Pass the flag where it's needed.
+
+Patch 9.0.0216
+Problem: Undo earlier test sometimes fails on MS-Windows.
+Solution: Use another file name.
+
+Patch 9.0.0217
+Problem: 'shellslash' works differently when sourcing a script again.
+Solution: Use the name from the script item. (closes #10920)
+
+Patch 9.0.0218
+Problem: Reading before the start of the line.
+Solution: When displaying "$" check the column is not negative.
+
+Patch 9.0.0219
+Problem: Cannot make a funcref with "s:func" in a def function in legacy
+ script.
+Solution: Allow for using a lower case function name after "s:". (Kota Kato,
+ closes #10926)
+
+Patch 9.0.0220
+Problem: Invalid memory access with for loop over NULL string.
+Solution: Make sure mb_ptr2len() consistently returns zero for NUL.
+
+Patch 9.0.0221
+Problem: Accessing freed memory if compiling nested function fails.
+Solution: Mess up the variable name so that it won't be found.
+
+Patch 9.0.0222
+Problem: No good reason why text objects are only in larger builds.
+Solution: Graduate +textobjects.
+
+Patch 9.0.0223
+Problem: Typo in diffmode test.
+Solution: Fix the typo. (closes #10932)
+
+Patch 9.0.0224
+Problem: Using NULL pointer when skipping compiled code.
+Solution: Check for skipping.
+
+Patch 9.0.0225
+Problem: Using freed memory with multiple line breaks in expression.
+Solution: Free eval_tofree later.
+
+Patch 9.0.0226
+Problem: job_start() test may fail under valgrind.
+Solution: Wait until the job is running.
+
+Patch 9.0.0227
+Problem: Cannot read error message when abort() is called.
+Solution: Output a newline before calling abort().
+
+Patch 9.0.0228
+Problem: Crash when pattern looks below the last line.
+Solution: Consider invalid lines to be empty. (closes #10938)
+
+Patch 9.0.0229
+Problem: Vim9: error message for missing type is not clear.
+Solution: Mention the context. (issue #10944)
+
+Patch 9.0.0230
+Problem: No error for comma missing in list in :def function.
+Solution: Check for missing comma. (closes #10943)
+
+Patch 9.0.0231
+Problem: Expanding "**" may loop forever with directory links.
+Solution: Check for being interrupted. (closes #10946)
+
+Patch 9.0.0232
+Problem: Test with BufNewFile autocmd is flaky.
+Solution: Use another file name.
+
+Patch 9.0.0233
+Problem: Removing multiple text properties takes many calls.
+Solution: Pass a list to prop_remove(). (Ben Jackson, closes #10945)
+
+Patch 9.0.0234
+Problem: Cannot make difference between the end of :normal and a character
+ in its argument.
+Solution: Add the "typebuf_was_empty" flag. (closes #10950)
+
+Patch 9.0.0235
+Problem: 'autoshelldir' does not work with chunked response.
+Solution: Collect chunks before parsing OSC 7. (closes #10949)
+
+Patch 9.0.0236
+Problem: Popup menu not removed when 'wildmenu' reset while it is visible.
+Solution: Do not check p_wmnu, only pum_visible(). (closes #10953)
+
+Patch 9.0.0237
+Problem: Mac: cannot build if dispatch.h is not available.
+Solution: Add #ifdef. (Evan Miller, closes #10954)
+
+Patch 9.0.0238
+Problem: Shift-Tab shows matches on cmdline when 'wildmenu' is off.
+Solution: Only show matches when 'wildmode' contains "list". (closes #10951)
+
+Patch 9.0.0239
+Problem: Build failure without the +wildmenu feature.
+Solution: Move parenthesis.
+
+Patch 9.0.0240
+Problem: Crash when using ":mkspell" with an empty .dic file.
+Solution: Check for an empty word tree.
+
+Patch 9.0.0241
+Problem: "make install" does not install shared syntax file. (James McCoy)
+Solution: Install and uninstall the shared syntax files. (closes #10956)
+
+Patch 9.0.0242
+Problem: "make install" still fails. (Wilhelm Payne)
+Solution: Also add the directory to installrtbase. (Dominique Pellé)
+
+Patch 9.0.0243
+Problem: Text properties "below" sort differently on MS-Windows.
+Solution: Use the ID as a tie breaker. (closes #10958)
+
+Patch 9.0.0244
+Problem: Cannot easily get the list of sourced scripts.
+Solution: Add the getscriptinfo() function. (Yegappan Lakshmanan,
+ closes #10957)
+
+Patch 9.0.0245
+Problem: Mechanism to prevent recursive screen updating is incomplete.
+Solution: Add "redraw_not_allowed" and set it in build_stl_str_hl().
+ (issue #10952)
+
+Patch 9.0.0246
+Problem: Using freed memory when 'tagfunc' deletes the buffer.
+Solution: Make a copy of the tag name.
+
+Patch 9.0.0247
+Problem: Cannot add padding to virtual text without highlight.
+Solution: Add the "text_padding_left" argument. (issue #10906)
+
+Patch 9.0.0248
+Problem: Duplicate code in finding a script in the execution stack.
+Solution: Reduce duplicate code. (closes #10961)
+
+Patch 9.0.0249
+Problem: No test for what 9.0.0234 fixes.
+Solution: Add a test. (issue #10950)
+
+Patch 9.0.0250
+Problem: Slightly inconsistent error messages.
+Solution: Make it "Using a Float". (closes #10959)
+
+Patch 9.0.0251
+Problem: Test output shows up in git.
+Solution: Ignore the "failed" directory. (Yao-Ching Huang, closes #10969)
+
+Patch 9.0.0252
+Problem: Cursor in wrong place after virtual text.
+Solution: Do not change the length of a virtual text property.
+ (closes #10964)
+
+Patch 9.0.0253
+Problem: A symlink to an autoload script results in two entries in the list
+ of scripts, items expected in one are actually in the other.
+Solution: Have one script item refer to the actually sourced one.
+ (closes #10960)
+
+Patch 9.0.0254
+Problem: Typo in function name.
+Solution: Rename the function. (closes #10971)
+
+Patch 9.0.0255
+Problem: Build failure without the eval feature.
+Solution: Add #ifdef.
+
+Patch 9.0.0256
+Problem: Compiler warning for uninitialized variables.
+Solution: Initialize the variables.
+
+Patch 9.0.0257
+Problem: "->" in ":scriptnames" output not tested yet.
+Solution: Add a check.
+
+Patch 9.0.0258
+Problem: MS-Windows installer skips syntax/shared.
+Solution: Use "File /r" in the installer script. (Ken Takata, closes #10972)
+
+Patch 9.0.0259
+Problem: Crash with mouse click when not initialized.
+Solution: Check TabPageIdxs[] is not NULL.
+
+Patch 9.0.0260
+Problem: Using freed memory when using 'quickfixtextfunc' recursively.
+Solution: Do not allow for recursion.
+
+Patch 9.0.0261
+Problem: bufload() reads a file even if the name is not a file name. (Cyker
+ Way)
+Solution: Do not read the file when the buffer name is not a file name.
+ (closes #10975)
+
+Patch 9.0.0262
+Problem: Build failure without the +quickfix feature.
+Solution: Add #ifdef.
+
+Patch 9.0.0263
+Problem: Too many #ifdefs.
+Solution: Make some functions always available.
+
+Patch 9.0.0264
+Problem: CI still runs on Ubuntu 18.04.
+Solution: Run CI on Ubuntu 20.04. (closes #10582)
+
+Patch 9.0.0265
+Problem: No good reason why the "gf" command is not in the tiny version.
+Solution: Graduate the file_in_path feature.
+
+Patch 9.0.0266
+Problem: Compiler warning for unused argument.
+Solution: Add UNUSED.
+
+Patch 9.0.0267
+Problem: Coverity workflow still uses Ubuntu 18.04.
+Solution: Use Ubuntu 20.04
+
+Patch 9.0.0268
+Problem: Build error without the +eval feature.
+Solution: Remove #ifdef.
+
+Patch 9.0.0269
+Problem: getscriptinfo() does not include the version. Cannot select
+ entries by script name.
+Solution: Add the "version" item and the "name" argument. (Yegappan
+ Lakshmanan, closes #10962)
+
+Patch 9.0.0270
+Problem: Some values of 'path' and 'tags' do not work in the tiny version.
+Solution: Graduate the +path_extra feature.
+
+Patch 9.0.0271
+Problem: Using INIT() in non-header files.
+Solution: Remove INIT(). (closes #10981)
+
+Patch 9.0.0272
+Problem: BufReadCmd not triggered when loading a "nofile" buffer. (Maxim
+ Kim)
+Solution: Call readfile() but bail out before reading a file.
+ (closes #10983)
+
+Patch 9.0.0273
+Problem: Konsole termresponse not recognized.
+Solution: Handle Konsole like libvterm, set 'ttymouse' to "sgr".
+ (closes #10990)
+
+Patch 9.0.0274
+Problem: Netrw plugin does not show remote files.
+Solution: Do read a file when 'buftype' is "acwrite". (closes #10983)
+
+Patch 9.0.0275
+Problem: BufEnter not triggered when using ":edit" in "nofile" buffer.
+Solution: Let readfile() return NOTDONE. (closes #10986)
+
+Patch 9.0.0276
+Problem: 'buftype' values not sufficiently tested.
+Solution: Add and extend tests with 'buftype' values. (closes #10988)
+
+Patch 9.0.0277
+Problem: Coverity CI: update-alternatives not needed with Ubuntu 20.04.
+Solution: Remove update-alternatives for Lua. (closes #10987)
+
+Patch 9.0.0278
+Problem: The +wildignore feature is nearly always available.
+Solution: Graduate +wildignore for consistency.
+
+Patch 9.0.0279
+Problem: The tiny version has the popup menu but not 'wildmenu'.
+Solution: Graduate the wildmenu feature.
+
+Patch 9.0.0280
+Problem: The builtin termcap list depends on the version.
+Solution: Always include all termcap entries. Remove duplicate lines.
+
+Patch 9.0.0281
+Problem: Build failure without the +eval feature.
+Solution: Add #ifdef.
+
+Patch 9.0.0282
+Problem: A nested timeout stops the previous timeout.
+Solution: Ignore any nested timeout.
+
+Patch 9.0.0283
+Problem: Cannot complete "syn list @cluster".
+Solution: Recognize and handle "list @". (Björn Linse, closes #10990)
+
+Patch 9.0.0284
+Problem: Using static buffer for multiple completion functions.
+Solution: Use one buffer in expand_T.
+
+Patch 9.0.0285
+Problem: It is not easy to change the command line from a plugin.
+Solution: Add setcmdline(). (Shougo Matsushita, closes #10869)
+
+Patch 9.0.0286
+Problem: Using freed memory when location list changed in autocmd.
+Solution: Return QF_ABORT and handle it. (Yegappan Lakshmanan,
+ closes #10993)
+
+Patch 9.0.0287
+Problem: Irix systems no longer exist.
+Solution: Remove references to Irix. (Yegappan Lakshmanan, closes #10994)
+
+Patch 9.0.0288
+Problem: When 'cmdheight' is zero some messages are not displayed.
+Solution: Use a popup notification window.
+
+Patch 9.0.0289
+Problem: Invalid memory write.
+Solution: Do not put NUL in a static string.
+
+Patch 9.0.0290
+Problem: Compiler warning for variable set but not used.
+Solution: Add #ifdef.
+
+Patch 9.0.0291
+Problem: Test failing.
+Solution: Run test with cmdheight=0 last.
+
+Patch 9.0.0292
+Problem: Test causes another test to fail.
+Solution: Redraw to remove the popup window
+
+Patch 9.0.0293
+Problem: Messages window not hidden when starting a command line.
+Solution: Hide the messages window. (closes #10996)
+
+Patch 9.0.0294
+Problem: Crash when 'cmdheight' is 0 and popup_clear() used.
+Solution: Reset "message_win" when the message popup is cleared. Close the
+ popup when 'cmdheight' is non-zero. Add a screendump test.
+
+Patch 9.0.0295
+Problem: GUI drop files test sometimes fails.
+Solution: Mark the test as flaky.
+
+Patch 9.0.0296
+Problem: Message in popup is shortened unnecessary.
+Solution: Do not use 'showcmd' and 'ruler' for a message in the popup.
+ Set the timer when unhiding the message popup.
+
+Patch 9.0.0297
+Problem: Cursor position wrong after right aligned virtual text. (Iizuka
+ Masashi)
+Solution: Take the width of the column offset into account. (closes #10997)
+ Also fix virtual text positioning.
+
+Patch 9.0.0298
+Problem: Compiler warning for size_t to int conversion.
+Solution: Add a type cast. (Wilhelm Payne, closes #11000)
+
+Patch 9.0.0299
+Problem: Error messages for setcmdline() could be better.
+Solution: Use more specific error messages. (Yegappan Lakshmanan,
+ closes #10995)
+
+Patch 9.0.0300
+Problem: 'cpoptions' tests are flaky.
+Solution: Use a different file name for each test.
+
+Patch 9.0.0301
+Problem: The message window popup is delayed after an error message.
+Solution: Do not set emsg_on_display when using the message window.
+
+Patch 9.0.0302
+Problem: CI for Coverity is bothered by deprecation warnings.
+Solution: Ignore deprecation warnings. (closes #11002)
+
+Patch 9.0.0303
+Problem: It is not easy to get information about a script.
+Solution: Make getscriptinfo() return the version. When selecting a specific
+ script return functions and variables. (Yegappan Lakshmanan,
+ closes #10991)
+
+Patch 9.0.0304
+Problem: WinScrolled is not triggered when only skipcol changes.
+Solution: Add w_last_skipcol and use it. (closes #10998)
+
+Patch 9.0.0305
+Problem: CI lists useless deprecation warnings.
+Solution: Ignore deprecation warnings. (closes #11003)
+
+Patch 9.0.0306
+Problem: Buffer write message is two lines in message popup window.
+Solution: Overwrite message if "msg_scroll" is off.
+
+Patch 9.0.0307
+Problem: :echomsg doesn't work properly with cmdheight=0.
+Solution: Improve scrolling and displaying.
+
+Patch 9.0.0308
+Problem: When cmdheight is zero the attention prompt doesn't show.
+Solution: Do not use the message window for a prompt.
+
+Patch 9.0.0309
+Problem: Invalid memory access when cmdheight is zero.
+Solution: Check index in w_lines is smaller than Rows.
+
+Patch 9.0.0310
+Problem: Output of :messages disappears when cmdheight is zero.
+Solution: Do not use the messages window for :messages. Make Esc close the
+ messages window.
+
+Patch 9.0.0311
+Problem: Test for hit-Enter prompt fails.
+Solution: Only reset cmdline_row when 'cmdheight' is zero.
+
+Patch 9.0.0312
+Problem: Test for cmdheight zero fails.
+Solution: Do not close the messages window for CTRL-C.
+
+Patch 9.0.0313
+Problem: Using common name in tests leads to flaky tests.
+Solution: Rename files and directories to be more specific.
+
+Patch 9.0.0314
+Problem: VDM files are not recognized.
+Solution: Add patterns for VDM files. (Alessandro Pezzoni, closes #11004)
+
+Patch 9.0.0315
+Problem: Shell command is displayed in message window.
+Solution: Do not echo the shell command in the message window.
+
+Patch 9.0.0316
+Problem: Screen flickers when 'cmdheight' is zero.
+Solution: Redraw over existing text instead of clearing.
+
+Patch 9.0.0317
+Problem: When updating the whole screen a popup may not be redrawn.
+Solution: Mark the screen and windows for redraw also when not clearing.
+ Also mark popup windows for redraw.
+
+Patch 9.0.0318
+Problem: Clearing screen causes flicker.
+Solution: Do not clear but redraw in more cases. Add () to "wait_return".
+
+Patch 9.0.0319
+Problem: Godot shader files are not recognized.
+Solution: Add patterns for "gdshader". (Maxim Kim, closes #11006)
+
+Patch 9.0.0320
+Problem: Command line type of CmdlineChange differs from getcmdtype().
+Solution: Use the same type. (closes #11005)
+
+Patch 9.0.0321
+Problem: Cannot use the message popup window directly.
+Solution: Add ":echowindow".
+
+Patch 9.0.0322
+Problem: Crash when no errors and 'quickfixtextfunc' is set.
+Solution: Do not handle errors if there aren't any.
+
+Patch 9.0.0323
+Problem: Using common name in tests leads to flaky tests.
+Solution: Rename files and directories to be more specific.
+
+Patch 9.0.0324
+Problem: MS-Windows: resolve() test fails.
+Solution: Revert renaming the directory.
+
+Patch 9.0.0325
+Problem: MS-Windows: completion test fails.
+Solution: Adjust directory prefix.
+
+Patch 9.0.0326
+Problem: Some changes for cmdheight=0 are not needed.
+Solution: Revert resize behavior if height is greater than the available
+ space. (Shougo Matsushita, closes #11008)
+
+Patch 9.0.0327
+Problem: items() does not work on a list. (Sergey Vlasov)
+Solution: Make items() work on a list. (closes #11013)
+
+Patch 9.0.0328
+Problem: OLD_DIGRAPHS is unused.
+Solution: Remove OLD_DIGRAPHS. Also drop HPUX_DIGRAPHS.
+
+Patch 9.0.0329
+Problem: ":highlight" hangs when 'cmdheight' is zero.
+Solution: Add to msg_col when using the message window. (closes #11014)
+
+Patch 9.0.0330
+Problem: Method tests fail.
+Solution: Adjust for change of items().
+
+Patch 9.0.0331
+Problem: Cannot use items() on a string.
+Solution: Make items() work on a string. (closes #11016)
+
+Patch 9.0.0332
+Problem: Overwrite check may block BufWriteCmd.
+Solution: Do not use overwrite check when 'buftype' is "acwrite".
+ (closes #11011)
+
+Patch 9.0.0333
+Problem: Method test fails.
+Solution: Adjust test for items() now working on string.
+
+Patch 9.0.0334
+Problem: Test does not properly clean up.
+Solution: Fix typo in argument of delete(). (Dominique Pellé, closes #11010)
+
+Patch 9.0.0335
+Problem: Checks for Dictionary argument often give a vague error message.
+Solution: Give a useful error message. (Yegappan Lakshmanan, closes #11009)
+
+Patch 9.0.0336
+Problem: Tests are flaky because of using a common file name.
+Solution: Rename files and directories to be more unique.
+
+Patch 9.0.0337
+Problem: Flicker when resetting cmdline_row after updating the screen.
+Solution: Do not update cmdline_row. (issue #11017)
+
+Patch 9.0.0338
+Problem: Return value of list_append_list() not always checked.
+Solution: Check return value and handle failure.
+
+Patch 9.0.0339
+Problem: No check if the return value of XChangeGC() is NULL.
+Solution: Only use the return value when it is not NULL. (closes #11020)
+
+Patch 9.0.0340
+Problem: The 'cmdheight' zero support causes too much trouble.
+Solution: Revert support for 'cmdheight' being zero.
+
+Patch 9.0.0341
+Problem: mapset() does not restore <Nop> mapping properly.
+Solution: Use an empty string for <Nop>. (closes #11022)
+
+Patch 9.0.0342
+Problem: ":wincmd =" equalizes in two directions.
+Solution: Make ":vertical wincmd =" equalize vertically only and
+ ":horizontal wincmd =" equalize horizontally only.
+
+Patch 9.0.0343
+Problem: ColorScheme autocommand triggered when colorscheme is not found.
+ (Romain Lafourcade)
+Solution: Only trigger ColorScheme when loading the colorscheme succeeds.
+ (closes #11024)
+
+Patch 9.0.0344
+Problem: MS-Windows: background color wrong in Console.
+Solution: Figure out the default console background color. (Yasuhiro
+ Matsumoto, issue #10310)
+
+Patch 9.0.0345
+Problem: Error message for list argument could be clearer.
+Solution: Include the argument number. (Yegappan Lakshmanan, closes #11027)
+
+Patch 9.0.0346
+Problem: :horizontal modifier not fully supported.
+Solution: Also use :horizontal for completion and user commands.
+ (closes #11025)
+
+Patch 9.0.0347
+Problem: MS-Windows: cannot set cursor shape in Windows Terminal.
+Solution: Make cursor shape work with Windows Terminal. (Ken Takata,
+ closes #11028, closes #6576)
+
+Patch 9.0.0348
+Problem: MS-Windows: GUI mouse move event test is flaky.
+Solution: Wait for a little while for the first move event.
+
+Patch 9.0.0349
+Problem: Filetype of *.sil files not well detected.
+Solution: Inspect the file contents to guess the filetype.
+
+Patch 9.0.0350
+Problem: :echowindow does not work in a compiled function.
+Solution: Handle the expression at compile time.
+
+Patch 9.0.0351
+Problem: Message window may obscure the command line.
+Solution: Reduce the maximum height of the message window.
+
+Patch 9.0.0352
+Problem: using :echowindow in a timer clears part of message
+Solution: Do not use msg_clr_eos().
+
+Patch 9.0.0353
+Problem: Missing entry in switch.
+Solution: Add ISN_ECHOWINDOW.
+
+Patch 9.0.0354
+Problem: MS-Windows: starting a python server for test sometimes fails.
+Solution: Increase the waiting time for the port.
+
+Patch 9.0.0355
+Problem: Check for uppercase char in autoload name is wrong, it checks the
+ name of the script.
+Solution: Remove the check. (closes #11031)
+
+Patch 9.0.0356
+Problem: :echowindow sets the in_echowindow flag too early.
+Solution: Set in_echowindow only when outputting the text. (Yasuhiro
+ Matsumoto, closes #11033)
+
+Patch 9.0.0357
+Problem: 'linebreak' interferes with text property highlight if there is
+ syntax highlighting.
+Solution: Check the text prop attributes after combining with syntax
+ attributes. (closes #11035)
+
+Patch 9.0.0358
+Problem: 'breakindent' does not indent non-lists with
+ "breakindentopt=list:-1".
+Solution: Adjust indent computation. (Maxim Kim, closes #11038)
+
+Patch 9.0.0359
+Problem: Error message for wrong argument type is not specific.
+Solution: Include more information in the error. (Yegappan Lakshmanan,
+ closes #11037)
+
+Patch 9.0.0360
+Problem: Crash when invalid line number on :for is ignored.
+Solution: Do not check breakpoint for non-existing line.
+
+Patch 9.0.0361
+Problem: Removing a listener may result in a memory leak and remove
+ subsequent listeners.
+Solution: Init the "prev" pointer only once. (Yegappan Lakshmanan,
+ closes #11039)
+
+Patch 9.0.0362
+Problem: Expanding ":e %" does not work for remote files.
+Solution: If the "%" or "#" file does not exist add the expansion anyway.
+
+Patch 9.0.0363
+Problem: Common names in test files causes tests to be flaky.
+Solution: Use more specific names.
+
+Patch 9.0.0364
+Problem: Clang static analyzer gives warnings.
+Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #11043)
+
+Patch 9.0.0365
+Problem: File name used in test is unusual.
+Solution: Rename it. (Dominique Pellé, closes #11044)
+
+Patch 9.0.0366
+Problem: Cannot use import->Func() in lambda. (Israel Chauca Fuentes)
+Solution: Adjust how an expression in a lambda is parsed. (closes #11042)
+
+Patch 9.0.0367
+Problem: Coverity complains about dropping sign of character.
+Solution: Add explicit type cast.
+
+Patch 9.0.0368
+Problem: Old Coverity warning for using NULL pointer.
+Solution: Bail out if dictionary allocation fails.
+
+Patch 9.0.0369
+Problem: A failing flaky test doesn't mention the time.
+Solution: Add the time for debugging. Improve error message.
+
+Patch 9.0.0370
+Problem: Cleaning up afterwards can make a function messy.
+Solution: Add the :defer command.
+
+Patch 9.0.0371
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize the variable. (John Marriott)
+
+Patch 9.0.0372
+Problem: MS-Windows: "%T" time format does not appear to work.
+Solution: Use "%H:%M:%S" instead.
+
+Patch 9.0.0373
+Problem: Coverity warns for NULL check and unused return value.
+Solution: Remove the NULL check, it was already checked earlier. Add (void)
+ to ignore the return value.
+
+Patch 9.0.0374
+Problem: Coverity still complains about dropping sign of character.
+Solution: Add intermediate variable.
+
+Patch 9.0.0375
+Problem: The footer feature is unused.
+Solution: Remove FEAT_FOOTER and code.
+
+Patch 9.0.0376
+Problem: Clang warns for dead assignments.
+Solution: Adjust the code. (Yegappan Lakshmanan, closes #11048)
+
+Patch 9.0.0377
+Problem: Argument assignment does not work.
+Solution: Skip over "=".
+
+Patch 9.0.0378
+Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
+Solution: Initialize it.
+
+Patch 9.0.0379
+Problem: Cleaning up after writefile() is a hassle.
+Solution: Add the 'D' flag to defer deleting the written file. Very useful
+ in tests.
+
+Patch 9.0.0380
+Problem: Deleting files in tests is a hassle.
+Solution: Use the new 'D' flag of writefile().
+
+
+Problem: Deleting files in tests is a hassle.
+Solution: Use the new 'D' flag of writefile().
+
+Patch 9.0.0381
+Problem: Writefile test leaves files behind.
+Solution: Fix the file names of files to be deleted. (Dominique Pellé,
+ closes #11056)
+
+Patch 9.0.0382
+Problem: Freeing the wrong string on failure.
+Solution: Adjust the argument. Reorder the code.
+
+Patch 9.0.0383
+Problem: Coverity complains about unused value.
+Solution: Use the value.
+
+Patch 9.0.0384
+Problem: Coverity still complains about using return value of getc().
+Solution: Check for EOF.
+
+Patch 9.0.0385
+Problem: GUI: when CTRL-D is mapped in Insert mode it gets inserted.
+ (Yasuhiro Matsumoto)
+Solution: Also recognize modifier starting with CSI. (closes #11057)
+
+Patch 9.0.0386
+Problem: Some code blocks are nested too deep.
+Solution: Bail out earlier. (Yegappan Lakshmanan, closes #11058)
+
+Patch 9.0.0387
+Problem: repeating a <ScriptCmd> mapping does not use the right script
+ context.
+Solution: When using a mapping put <SID>{sid}; in the redo buffer.
+ (closes #11049)
+
+Patch 9.0.0388
+Problem: The do_arg_all() function is too long.
+Solution: Split the function in smaller parts. (Yegappan Lakshmanan,
+ closes #11062)
+
+Patch 9.0.0389
+Problem: Crash when 'tagfunc' closes the window.
+Solution: Bail out when the window was closed.
+
+Patch 9.0.0390
+Problem: Cannot use a partial with :defer.
+Solution: Add the partial arguments before the other arguments. Disallow
+ using a dictionary.
+
+Patch 9.0.0391
+Problem: Using separate delete() call instead of writefile() 'D' flag.
+Solution: Use the writefile 'D' flag.
+
+Patch 9.0.0392
+Problem: Inverted condition is a bit confusing.
+Solution: Remove the "!" and swap the blocks. (Ken Takata)
+
+Patch 9.0.0393
+Problem: Signals test often fails on FreeBSD.
+Solution: Use separate files for Suspend and Resume. (Ken Takata,
+ closes #11065)
+
+Patch 9.0.0394
+Problem: Cygwin: multibyte characters may be broken in terminal window.
+Solution: Adjust how to read and write on the channel. (Ken Takata,
+ closes #11063)
+
+Patch 9.0.0395
+Problem: Clang warnings for function prototypes.
+Solution: Remove incomplete function prototypes. (closes #11068)
+
+Patch 9.0.0396
+Problem: :findrepl does not escape '&' and '~' properly.
+Solution: Escape depending on the value of 'magic'. (closes #11067)
+
+Patch 9.0.0397
+Problem: :defer not tested with exceptions and ":qa!".
+Solution: Test :defer works when exceptions are thrown and when ":qa!" is
+ used. Invoke the deferred calls on exit.
+
+Patch 9.0.0398
+Problem: Members of funccall_T are inconsistently named.
+Solution: Use the "fc_" prefix for all members.
+
+Patch 9.0.0399
+Problem: Using :defer in expression funcref not tested.
+Solution: Add a test. Fix uncovered problems.
+
+Patch 9.0.0400
+Problem: GUI test sometimes hangs on CI.
+Solution: Delete a test file explicitly. (Ken Takata, closes #11072)
+
+Patch 9.0.0401
+Problem: CI uses older clang version.
+Solution: Switch from clang 14 to 15. (closes #11066)
+
+Patch 9.0.0402
+Problem: Javascript module files are not recognized.
+Solution: Recognize "*.jsm" files as Javascript. (Brett Holman,
+ closes #11069)
+
+Patch 9.0.0403
+Problem: 'equalalways' may be off when 'laststatus' is zero.
+Solution: call last_status() before win_equal(). (Luuk van Baal,
+ closes #11070)
+
+Patch 9.0.0404
+Problem: Crash when passing invalid arguments to assert_fails().
+Solution: Check for NULL string.
+
+Patch 9.0.0405
+Problem: Arguments in a partial not used by a :def function.
+Solution: Put the partial arguments on the stack.
+
+Patch 9.0.0406
+Problem: Deferred functions not invoked when partial func exits.
+Solution: Create a funccall_T when calling a :def function.
+
+Patch 9.0.0407
+Problem: matchstr() does match column offset. (Yasuhiro Matsumoto)
+Solution: Accept line number zero. (closes #10938)
+
+Patch 9.0.0408
+Problem: GUI test sometimes fails on MS-Windows.
+Solution: Make sure Vim is the foreground window. (Ken Takata, closes #11077)
+
+Patch 9.0.0409
+Problem: #{g:x} was seen as a curly-braces expression.
+Solution: Do never see #{} as a curly-braces expression. (closes #11075)
+
+Patch 9.0.0410
+Problem: Struct member cts_lnum is unused.
+Solution: Delete it.
+
+Patch 9.0.0411
+Problem: Only created files can be cleaned up with one call.
+Solution: Add flags to mkdir() to delete with a deferred function.
+ Expand the writefile() name to a full path to handle changing
+ directory.
+
+Patch 9.0.0412
+Problem: Compiler warning for unused argument.
+Solution: Add UNUSED.
+
+Patch 9.0.0413
+Problem: ASAN reports a memory leak.
+Solution: Free the string received from the server. (Ken Takata,
+ closes #11080)
+
+Patch 9.0.0414
+Problem: matchstr() still does not match column offset when done after a
+ text search.
+Solution: Only use the line number for a multi-line search. Fix the test.
+ (closes #10938)
+
+Patch 9.0.0415
+Problem: On MS-Windows some tests are flaky.
+Solution: Add sleeps, disable swapfile, mark test as flaky. (Ken Takata,
+ closes #11082)
+
+Patch 9.0.0416
+Problem: ml_get error when appending lines in popup window.
+Solution: Only update w_topline when w_buffer matches curbuf.
+ (closes #11074)
+
+Patch 9.0.0417
+Problem: Jsonnet files are not recognized.
+Solution: Add a pattern for Jsonnet files. (Cezary Drożak, closes #11073,
+ closes #11081)
+
+Patch 9.0.0418
+Problem: Manually deleting temp test files.
+Solution: Use the 'D' flag of writefile() and mkdir().
+
+Patch 9.0.0419
+Problem: The :defer command does not check the function argument count and
+ types.
+Solution: Check the function arguments when adding a deferred function.
+
+Patch 9.0.0420
+Problem: Function went missing.
+Solution: Add the function back.
+
+Patch 9.0.0421
+Problem: MS-Windows makefiles are inconsistently named.
+Solution: Use consistent names. (Ken Takata, closes #11088)
+
+Patch 9.0.0422
+Problem: Not enough testing of the :all command.
+Solution: Add more testing. (Yegappan Lakshmanan, closes #11091)
+
+Patch 9.0.0423
+Problem: "for" and "while" not recognized after :vim9cmd and :legacy.
+ (Emanuele Torre)
+Solution: Recognize all the command modifiers. (closes #11087)
+ Add a test to check the list of modifiers.
+
+Patch 9.0.0424
+Problem: gitattributes files are not recognized.
+Solution: Add patterns to match gitattributes files. (closes #11085)
+
+Patch 9.0.0425
+Problem: Autocmd test is a bit flaky on MS-Windows.
+Solution: Add a bit more sleeping. (Ken Takata, closes #11095)
+
+Patch 9.0.0426
+Problem: Failed flaky tests reports only start time.
+Solution: Also report the end time.
+
+Patch 9.0.0427
+Problem: Drupal theme files are not recognized.
+Solution: Use php filetype for Drupl theme files. Remove trailing spaces.
+ (Rodrigo Aguilera, closes #11096)
+
+Patch 9.0.0428
+Problem: Autocmd test uses common file name.
+Solution: Use unique name to reduce flakiness.
+
+Patch 9.0.0429
+Problem: Not all keys are tested for the MS-Windows GUI.
+Solution: Add more key codes to the list. (Yegappan Lakshmanan,
+ closes #11097)
+
+Patch 9.0.0430
+Problem: Cannot use repeat() with a blob.
+Solution: Implement blob repeat. (closes #11090)
+
+Patch 9.0.0431
+Problem: Current mode shows in message window.
+Solution: Reset in_echowindow before redrawing. (issue #11094)
+
+Patch 9.0.0432
+Problem: Crash when using for loop variable in closure.
+Solution: Check that the variable wasn't deleted. (issue #11094)
+
+Patch 9.0.0433
+Problem: Coverity warns for not checking allocation failure.
+Solution: Check that allocating a list or blob succeeded.
+
+Patch 9.0.0434
+Problem: gitignore files are not recognized.
+Solution: Add patterns for the gitignore filetype. (closes #11102)
+
+Patch 9.0.0435
+Problem: Compiler warning for uninitialized variable.
+Solution: Initialize it.
+
+Patch 9.0.0436
+Problem: CI: running tests in parallel causes flakiness.
+Solution: Reorganize the MS-Windows runs. (Ken Takata, closes #11101)
+
+Patch 9.0.0437
+Problem: No error when a custom completion function returns something else
+ than the expected list.
+Solution: Give an error. (closes #11100)
+
+Patch 9.0.0438
+Problem: Cannot put virtual text above a line.
+Solution: Add the "above" value for "text_align".
+
+Patch 9.0.0439
+Problem: Cursor wrong if inserting before line with virtual text above.
+Solution: Add the width of the "above" virtual text to the cursor position.
+ (issue #11084)
+
+Patch 9.0.0440
+Problem: Crash when using mkdir() with "R" flag in compiled function.
+Solution: Reserve a variable for deferred function calls. Handle more than
+ one argument.
+
+Patch 9.0.0441
+Problem: Closure in for loop test fails on some systems.
+Solution: Do not wait for the ruler to show up. (issue #11106)
+
+Patch 9.0.0442
+Problem: Virtual text "above" doesn't handle line numbers.
+Solution: Take the left column offset into account. (issue #11084)
+ Also make padding work.
+
+Patch 9.0.0443
+Problem: Blueprint files are not recognized.
+Solution: Add a pattern for blueprint files. (Gabriele Musco, closes #11107)
+
+Patch 9.0.0444
+Problem: Trying to declare g:variable gives confusing error.
+Solution: Give a better error message. (closes #11108)
+
+Patch 9.0.0445
+Problem: When opening/closing window text moves up/down.
+Solution: Add the 'splitscroll' option. When off text will keep its
+ position as much as possible.
+
+Patch 9.0.0446
+Problem: Message window may be positioned too low.
+Solution: Compute cmdline_row before computing the position.
+
+Patch 9.0.0447
+Problem: Using :echowin while at the hit-enter prompt causes problems.
+Solution: Do not prompt for :echowin. Postpone showing the message window.
+ Start the timer when the window is displayed.
+
+Patch 9.0.0448
+Problem: SubRip files are not recognized.
+Solution: Add a pattern for SubRip. (closes #11113)
+
+Patch 9.0.0449
+Problem: There is no easy way to translate a string with a key code into a
+ readable string.
+Solution: Add the keytrans() function. (closes #11114)
+
+Patch 9.0.0450
+Problem: Return value of argument check functions is inconsistent.
+Solution: Return OK/FAIL instead of TRUE/FALSE. (closes #11112)
+
+Patch 9.0.0451
+Problem: Virtual text "above" does not work with 'nowrap'.
+Solution: Do wrap the line after. (closes #11084)
+
+Patch 9.0.0452
+Problem: Visual highlighting extends into virtual text prop.
+Solution: Do not highlight what isn't actually selected. Fix ordering of
+ stored text props.
+
+Patch 9.0.0453
+Problem: On an AZERTY keyboard digit keys get the shift modifier.
+Solution: Remove the shift modifier from digit keys. (closes #11109)
+
+Patch 9.0.0454
+Problem: Incorrect color for modeless selection with GTK.
+Solution: Use simple inversion instead of XOR. (closes #11111)
+
+Patch 9.0.0455
+Problem: A few problems with 'splitscroll'.
+Solution: Fix 'splitscroll' problems. (Luuk van Baal, closes #11117)
+
+Patch 9.0.0456
+Problem: Function called at debug prompt is also debugged.
+Solution: Reset the debug level while entering the debug command.
+ (closes #11118)
+
+Patch 9.0.0457
+Problem: Substitute prompt does not highlight an empty match.
+Solution: Highlight at least one character.
+
+Patch 9.0.0458
+Problem: Splitting a line with a text prop "above" moves it to a new line
+ below.
+Solution: Keep an "above" text prop above the first line.
+
+Patch 9.0.0459
+Problem: Vim9: block in for loop doesn't behave like a code block.
+Solution: Use a new block ID for each loop at the script level.
+
+Patch 9.0.0460
+Problem: Loop variable can't be found.
+Solution: Adjust block_id of the loop variable each round.
+
+Patch 9.0.0461
+Problem: 'scroll' is not always updated.
+Solution: Call win_init_size() at the right place.
+
+Patch 9.0.0462
+Problem: ASAN warning for integer overflow.
+Solution: Check for tp_col to be MAXCOL.
+
+Patch 9.0.0463
+Problem: Command line test leaves directory behind.
+Solution: Use the "R" flag on the first mkdir(). (Dominique Pellé,
+ closes #11127)
+
+Patch 9.0.0464
+Problem: With virtual text "above" indenting doesn't work well.
+Solution: Ignore text properties while adjusting indent. (issue #11084)
+
+Patch 9.0.0465
+Problem: Cursor moves when cmdwin is closed when 'splitscroll' is off.
+Solution: Temporarily set 'splitscroll' when jumping back to the original
+ window. (closes #11128)
+
+Patch 9.0.0466
+Problem: Virtual text wrong after adding line break after line.
+Solution: Pass an "eol" flag to where text properties are adjusted.
+ (closes #11131)
+
+Patch 9.0.0467
+Problem: Build failure.
+Solution: Add missing change.
+
+Patch 9.0.0468
+Problem: Execution stack underflow without the +eval feature. (Dominique
+ Pellé)
+Solution: Add to execution stack without FEAT_EVAL. (closes #11135)
+
+Patch 9.0.0469
+Problem: Cursor moves if cmdwin is closed when 'splitscroll' is off.
+Solution: Skip win_fix_cursor if called when cmdwin is open or closing.
+ (Luuk van Baal, closes #11134)
+
+Patch 9.0.0470
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: When in a loop and a closure refers to a variable declared in the
+ loop, prepare for making a copy of variables for each closure.
+
+Patch 9.0.0471
+Problem: No test for what patch 9.0.0469 fixes.
+Solution: Add a test. (closes #11140)
+
+Patch 9.0.0472
+Problem: Virtual text "below" doesn't show in list mode.
+Solution: Reset lcs_eol_one when displaying text property.
+
+Patch 9.0.0473
+Problem: fullcommand() only works for the current script version.
+Solution: Add an optional argument for the script version.
+
+Patch 9.0.0474
+Problem: fullcommand() test failure.
+Solution: Update function table.
+
+Patch 9.0.0475
+Problem: Not using deferred delete in tests.
+Solution: Use deferred delete more often.
+
+Patch 9.0.0476
+Problem: Varargs does not work for replacement function of substitute().
+Solution: Check the varargs flag of the function. (closes #11142)
+
+Patch 9.0.0477
+Problem: Missing dependency may cause crashes on incomplete build.
+Solution: Add dependency.
+
+Patch 9.0.0478
+Problem: Test for 'splitscroll' takes too much time.
+Solution: Only test some of the combinations. (Luuk van Baal, closes #11139)
+
+Patch 9.0.0479
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: Use a separate list of variables for LOADOUTER and SAVEOUTER.
+
+Patch 9.0.0480
+Problem: Cannot use a :def varargs function with substitute().
+Solution: Use has_varargs(). (closes #11146)
+
+Patch 9.0.0481
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: Use a separate list of variables for LOADOUTER and STOREOUTER.
+ Not copied at end of loop yet.
+
+Patch 9.0.0482
+Problem: "g0" moves to wrong location with virtual text "above".
+Solution: Compensate for the extra columns. (closes #11141) Also fix "g$"
+
+Patch 9.0.0483
+Problem: Illegal memory access when replacing in virtualedit mode.
+Solution: Check for replacing NUL after Tab.
+
+Patch 9.0.0484
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: Add ENDLOOP at break, continue and return if needed.
+
+Patch 9.0.0485
+Problem: In a :def function all closures in a loop get the same variables.
+Solution: Make a copy of loop variables used in a closure.
+
+Patch 9.0.0486
+Problem: Text scrolled with 'nosplitscroll', autocmd win opened and help
+ window closed.
+Solution: Skip win_fix_scroll() in more situations. (Luuk van Baal,
+ closes #11150)
+
+Patch 9.0.0487
+Problem: Using freed memory with combination of closures.
+Solution: Do not use a partial after it has been freed through the
+ funcstack.
+
+Patch 9.0.0488
+Problem: Cursor in wrong position with virtual text "above" and
+ 'showbreak'.
+Solution: Take the first character column into account. (closes #11149)
+
+Patch 9.0.0489
+Problem: Using "end_lnum" with virtual text causes problems.
+Solution: Disallow using "end_lnum" with virtual text. (closes #11151)
+ Also disallow "end_col" and "length".
+
+Patch 9.0.0490
+Problem: Using freed memory with cmdwin and BufEnter autocmd.
+Solution: Make sure pointer to b_p_iminsert is still valid.
+
+Patch 9.0.0491
+Problem: No good reason to build without the float feature.
+Solution: Remove configure check for float and "#ifdef FEAT_FLOAT".
+
+Patch 9.0.0492
+Problem: Cmdwin test fails on MS-Windows.
+Solution: Skip test on MS-Windows.
+
+Patch 9.0.0493
+Problem: Perl test fails.
+Solution: Remove remaining FEAT_EVAL.
+
+Patch 9.0.0494
+Problem: Small build misses float function declarations.
+Solution: Adjust #ifdefs.
+
+Patch 9.0.0495
+Problem: Closure doesn't work properly in nested loop.
+Solution: Save variables up to the outer loop.
+
+Patch 9.0.0496
+Problem: No good reason to keep supporting Windows-XP.
+Solution: Drop Windows-XP support. (Ken Takata, closes #11089)
+
+Patch 9.0.0497
+Problem: LyRiCs files are not recognized.
+Solution: Add a pattern to detect LyRiCs files. (closes #11155)
+
+Patch 9.0.0498
+Problem: Various small issues.
+Solution: Various small fixes.
+
+Patch 9.0.0499
+Problem: In :def function list created after const is locked.
+Solution: Reset v_lock. (closes #11154)
+
+Patch 9.0.0500
+Problem: When quitting the cmdline window with CTRL-C it remains visible.
+Solution: Redraw to avoid confusion. Adjust the error message.
+ (closes #11152) Adjust the cursor position after CTRL-C.
+
+Patch 9.0.0501
+Problem: Warning for using uninitialized value in mouse test.
+Solution: Clear ScreenCols when allocating it. (Dominique Pellé)
+
+Patch 9.0.0502
+Problem: A closure in a nested loop in a :def function does not work.
+Solution: Use an array of loopvars, one per loop level.
+
+Patch 9.0.0503
+Problem: Build failure.
+Solution: Add missing changes.
+
+Patch 9.0.0504
+Problem: still a Build failure.
+Solution: Add another missing changes. Avoid compiler warning.
+
+Patch 9.0.0505
+Problem: Various problems with 'nosplitscroll'.
+Solution: Fix 'nosplitscroll' problems. (Luuk van Baal, closes #11166)
+
+Patch 9.0.0506
+Problem: Line number argument for :badd does not work.
+Solution: Set the last cursor position in the new buffer. (closes #11161)
+
+Patch 9.0.0507
+Problem: Command line cleared when using :redrawstatus in CmdlineChanged
+ autocommand event.
+Solution: Postpone the redraw. (closes #11162)
+
+Patch 9.0.0508
+Problem: When the channel test fails there is no clue why.
+Solution: Add info about the job status. (Ken Takata, closes #11175)
+
+Patch 9.0.0509
+Problem: Confusing error for "saveas" command with "nofile" buffer.
+Solution: Give a clearer error message. (closes #11171)
+
+Patch 9.0.0510
+Problem: Chatito files are not recognized.
+Solution: Add a pattern for Chatito files. (closes #11174)
+
+Patch 9.0.0511
+Problem: Unnecessary scrolling for message of only one line.
+Solution: Only set msg_scroll when needed. (closes #11178)
+
+Patch 9.0.0512
+Problem: Cannot redraw the status lines when editing a command.
+Solution: Only postpone the redraw when messages have scrolled.
+ (closes #11170)
+
+Patch 9.0.0513
+Problem: May not be able to use a pattern ad the debug prompt.
+Solution: Temporarily disable the timeout. (closes #11164)
+
+Patch 9.0.0514
+Problem: Terminal test sometimes hangs.
+Solution: Add a bit more information to the test output. (issue #11179)
+
+Patch 9.0.0515
+Problem: Virtual text highlight starts too early when 'number' is set.
+Solution: Set column offset when wrapping. (issue #11138)
+
+Patch 9.0.0516
+Problem: Virtual text "above" highlights gap after it.
+Solution: Do not highlight the gap. (closes #11138)
+
+Patch 9.0.0517
+Problem: When at the command line :redrawstatus does not work well.
+Solution: Only update the statuslines instead of the screen. (closes #11180)
+
+Patch 9.0.0518
+Problem: Virtual text highlight starts too early with 'nowrap' and 'number'
+ set.
+Solution: Add the offset to the attribute skip count. (issue #11138)
+
+Patch 9.0.0519
+Problem: The win_line() function is much too long.
+Solution: Move the code to draw the line number to a separate function.
+
+Patch 9.0.0520
+Problem: Declaring a loop variable at the start of a block is clumsy.
+Solution: Declare the variable inside the loop in a few places to see if
+ this works.
+
+Patch 9.0.0521
+Problem: Compiler warns for unused argument in small version.
+Solution: Add UNUSED.
+
+Patch 9.0.0522
+Problem: Build fails on Appveyor.
+Solution: Select Visual Studio 2015 for the build tools.
+
+Patch 9.0.0523
+Problem: more compiler warnings for arguments in small version
+Solution: Adjust #ifdefs.
+
+Patch 9.0.0524
+Problem: Build instructions for MS-Windows are outdated.
+Solution: Remove instructions for old MSVC versions.
+
+Patch 9.0.0525
+Problem: Manually deleting temp test files.
+Solution: Add the 'D' flag to writefile().
+
+Patch 9.0.0526
+Problem: MS-Windows: still some support for XP and old compilers.
+Solution: Remove XP support and mention of old compilers. (Ken Takata,
+ closes #11183)
+
+Patch 9.0.0527
+Problem: Long sign text may overflow buffer.
+Solution: Use a larger buffer. Prevent for overflow.
+
+Patch 9.0.0528
+Problem: MS-Windows: no batch files for more recent MSVC versions.
+Solution: Add batch files for 2017, 2019 and 2022. (Ken Takata,
+ closes #11184)
+
+Patch 9.0.0529
+Problem: Appveyor setup contains outdated lines.
+Solution: Remove outdated lines. (Ken Takata, closes #11182)
+
+Patch 9.0.0530
+Problem: Using freed memory when autocmd changes mark.
+Solution: Copy the mark before editing another buffer.
+
+Patch 9.0.0531
+Problem: The win_line() function is much too long.
+Solution: Move code to separate functions.
+
+Patch 9.0.0532
+Problem: Edit test is flaky when run under valgrind.
+Solution: Send some text to the terminal to trigger a redraw.
+
+Patch 9.0.0533
+Problem: The win_line() function is much too long.
+Solution: Move code to separate functions.
+
+Patch 9.0.0534
+Problem: Line number is displayed at virtual text "above".
+Solution: Show the line number at the text line.
+
+Patch 9.0.0535
+Problem: Closure gets wrong value in for loop with two loop variables.
+Solution: Correctly compute the number of loop variables to clear.
+
+Patch 9.0.0536
+Problem: CI: codecov action update available.
+Solution: Update Codecov 3.1.0 to 3.3.1. (closes #11188)
+
+Patch 9.0.0537
+Problem: The do_set() function is much too long.
+Solution: Move setting of a string option to a separate function.
+
+Patch 9.0.0538
+Problem: Manually deleting test temp files.
+Solution: Add the 'D' flag to writefile().
+
+Patch 9.0.0539
+Problem: Long message test can be flaky.
+Solution: Wait for more prompt instead of ruler.
+
+Patch 9.0.0540
+Problem: Assigning stack variable to argument confuses Coverity.
+Solution: Use a local pointer, also makes the code simpler.
+
+Patch 9.0.0541
+Problem: Terminal pwd test fails with a very long path name.
+Solution: Join two lines.
+
+Patch 9.0.0542
+Problem: MSVC build still has support for 2012 edition.
+Solution: Drop MSVC 2012 support. (Ken Takata, closes #11191)
+
+Patch 9.0.0543
+Problem: Insufficient testing for assert and test functions.
+Solution: Add a few more tests. (Yegappan Lakshmanan, closes #11190)
+
+Patch 9.0.0544
+Problem: Minor issues with setting a string option.
+Solution: Adjust the code, add a test. (closes #11192)
+
+Patch 9.0.0545
+Problem: When a test is slow and CI times out there is no time info.
+Solution: Add the elapsed time to the "Executing" message.
+
+Patch 9.0.0546
+Problem: Supporting Ruby 1.8 makes code complicated.
+Solution: Drop Ruby 1.8 support, it is ancient. (Ken Takata, closes #11195)
+
+Patch 9.0.0547
+Problem: Looping over empty out_loop[] entries.
+Solution: Store the array size.
+
+Patch 9.0.0548
+Problem: reduce() with a compiled lambda could be faster.
+Solution: Call eval_expr_typval() instead of call_func() directly.
+
+Patch 9.0.0549
+Problem: Duplicated code in calling a :def function.
+Solution: Simplify the code.
+
+Patch 9.0.0550
+Problem: Crash when closing a tabpage and buffer is NULL.
+Solution: Adjust how autocommands are triggered when closing a window.
+ (closes #11198, closes #11197)
+
+Patch 9.0.0551
+Problem: Mode message is delayed when :echowin was used. (Maxim Kim)
+Solution: Save and restore msg_didout in :echowin. (closes #11193)
+
+Patch 9.0.0552
+Problem: Crash when using NUL in buffer that uses :source.
+Solution: Don't get a next line when skipping over NL.
+
+Patch 9.0.0553
+Problem: No error for "|" after "{" in lambda.
+Solution: Check for invalid "|". (closes #11199)
+
+Patch 9.0.0554
+Problem: Using freed memory when command follows lambda.
+Solution: Don't free what is still in use. (closes #11201)
+
+Patch 9.0.0555
+Problem: Scrolling with 'nosplitscroll' in callback changing curwin.
+Solution: Invalidate w_cline_row in the right place. (Luuk van Baal,
+ closes #11185)
+
+Patch 9.0.0556
+Problem: Leaking memory with nested functions.
+Solution: Free saved pointer.
+
+Patch 9.0.0557
+Problem: Valgrind reports possibly leaked memory.
+Solution: Move the problematic test function to the "fails" test file to
+ avoid obscuring real memory leaks.
+
+Patch 9.0.0558
+Problem: Coverity warns for possibly using NULL pointer.
+Solution: Only use "evalarg" when not NULL.
+
+Patch 9.0.0559
+Problem: Timer test may get stuck at hit-enter prompt.
+Solution: Feed some more characters.
+
+Patch 9.0.0560
+Problem: Elapsed time since testing started is not visible.
+Solution: Show the elapsed time while running tests.
+
+Patch 9.0.0561
+Problem: When a test gets stuck it just hangs forever.
+Solution: Set a timeout of 30 seconds.
+
+Patch 9.0.0562
+Problem: HSL playlist files are not recognized.
+Solution: Add a pattern to recognize HSL playlist files. (Benoît Ryder,
+ closes #11204)
+
+Patch 9.0.0563
+Problem: Timer_info() test fails.
+Solution: Ignore test timeout timer. Don't use test_null_job() when not
+ available.
+
+Patch 9.0.0564
+Problem: A few tests keep failing on MacOS M1.
+Solution: Add a test check CheckNotMacM1. Fix timer tests.
+
+Patch 9.0.0565
+Problem: Cscope test causes problems when code for test timeout timer is
+ included (even when commented out).
+Solution: Disable part of the cscope test for now.
+
+Patch 9.0.0566
+Problem: Nim files are not recognized.
+Solution: Add patterns for Nim files. (Nbiba Bedis, closes #11205)
+
+Patch 9.0.0567
+Problem: 'completeopt' "longest" is not used for complete().
+Solution: Also use "longest" for complete(). (Bjorn Linse, closes #11206)
+
+Patch 9.0.0568
+Problem: Autocmd code is indented more than needed.
+Solution: Break out sooner. (Yegappan Lakshmanan, closes #11208)
+ Also in user function code.
+
+Patch 9.0.0569
+Problem: Cannot easily get out when using "vim file | grep word".
+Solution: Without changes let CTRL-C exit Vim. Otherwise give a message on
+ stderr. (closes #11209)
+
+Patch 9.0.0570
+Problem: CI for Windows is still using codecov action 3.1.0.
+Solution: Use action 3.1.1. (closes #11212)
+
+Patch 9.0.0571
+Problem: MS-Windows: CTRL-C can make Vim exit.
+Solution: Check the not-a-term argument.
+
+Patch 9.0.0572
+Problem: Insert complete tests leave a mapping behind.
+Solution: Use a buffer-local mapping. (closes #11211)
+
+Patch 9.0.0573
+Problem: Outdated dependencies go unnoticed.
+Solution: Use github Dependabot. (closes #11213)
+
+Patch 9.0.0574
+Problem: Timer garbage collect test hangs on Mac M1.
+Solution: Properly check for Mac M1 and skip the test.
+
+Patch 9.0.0575
+Problem: The getchar() function behaves strangely with bracketed paste.
+Solution: Do not handle paste-start in getchar(). (issue #11172)
+
+Patch 9.0.0576
+Problem: Unused loop variables.
+Solution: Use a while loop instead. (closes #11214)
+
+Patch 9.0.0577
+Problem: Buffer underflow with unexpected :finally.
+Solution: Check CSF_TRY can be found.
+
+Patch 9.0.0578
+Problem: One timer test fails on Mac M1.
+Solution: Skip the test on Mac M1.
+
+Patch 9.0.0579
+Problem: Using freed memory when 'tagfunc' wipes out buffer that holds
+ 'complete'.
+Solution: Make a copy of the option. Make sure cursor position is valid.
+
+Patch 9.0.0580
+Problem: No CI running for MacOS on M1.
+Solution: Add a cirrus CI task. (closes #11203)
+
+Patch 9.0.0581
+Problem: Adding a character for incsearch fails at end of line.
+Solution: Only check cursor line number.
+
+Patch 9.0.0582
+Problem: Channel cwd test fails on Cirrus CI.
+Solution: Also remove /private from the expected directory.
+
+Patch 9.0.0583
+Problem: Only recognizing .m3u8 files is inconsistent.
+Solution: Also match .m3u files. (issue #11204)
+
+Patch 9.0.0584
+Problem: Cscope test with wrong executable name fails.
+Solution: Use /bin/sh to execute the command. (Yegappan Lakshmanan)
+
+Patch 9.0.0585
+Problem: When long message test fails the error message is not visible.
+Solution: Dump more lines.
+
+Patch 9.0.0586
+Problem: Missing change in test.
+Solution: Add the test change.
+
+Patch 9.0.0587
+Problem: Unicode tables are outdated.
+Solution: Update to Unicode release 15. (Christian Brabandt, closes #11220)
+
+Patch 9.0.0588
+Problem: MorphOS build is broken.
+Solution: Add "-lm" to LDFLAGS and "-noixemul" to CFLAGS. (Ola Söder,
+ closes #11222)
+
+Patch 9.0.0589
+Problem: On AmigaOS4 the pid is available but the task address is used.
+Solution: Use getpid(). (Ola Söder, closes #11224)
+
+Patch 9.0.0590
+Problem: After exiting Insert mode spelling is not checked in the next
+ line.
+Solution: When spelling is enabled redraw the next line after exiting Insert
+ mode in case the spell highlight needs updating.
+
+Patch 9.0.0591
+Problem: Message window popup shows on only one tab page. (Naruhiko
+ Nishino)
+Solution: Show the message window popup on all tab pages. (closes #11231)
+
+Patch 9.0.0592
+Problem: Display not cleared when scrolling back in messages, a background
+ color is set and t_ut is empty.
+Solution: Clear to the end of the display if needed. (closes #8973)
+
+Patch 9.0.0593
+Problem: CI actions have too many permissions.
+Solution: Restrict permissions to what is required. (closes #11223)
+
+Patch 9.0.0594
+Problem: Makefile error message causes a shell error.
+Solution: Put the message in single quotes. (closes #11232)
+
+Patch 9.0.0595
+Problem: Extra newline in messages after a verbose shell message.
+Solution: Output the newline with msg_putchar_attr(). (closes #11233)
+ Make it possible to filter a screendump before comparing it.
+
+Patch 9.0.0596
+Problem: CI on Mac M1 has the channel feature disabled.
+Solution: Include the channel feature.
+
+Patch 9.0.0597
+Problem: Cannot close a tab page with the middle mouse button.
+Solution: Support closing a tab page with the middle mouse button, like many
+ other programs. (closes #10746)
+
+Patch 9.0.0598
+Problem: Using negative array index with negative width window.
+Solution: Make sure the window width does not become negative.
+
+Patch 9.0.0599
+Problem: Latexmkrc files are not recognized.
+Solution: Use Perl filetype for latexmkrc files. (closes #11241)
+
+Patch 9.0.0600
+Problem: GYP files are not recognized.
+Solution: Recognize GYP files. (closes #11242)
+
+Patch 9.0.0601
+Problem: Too much indent.
+Solution: Return out early from a function. (Yegappan Lakshmanan,
+ close #11238)
+
+Patch 9.0.0602
+Problem: New TypeScript extensions are not recognized.
+Solution: Recognize .mts and .cts files. (closes #11237)
+
+Patch 9.0.0603
+Problem: With 'nosplitscroll' folds are not handled correctly.
+Solution: Take care of closed folds when moving the cursor. (Luuk van Baal,
+ closes #11234)
+
+Patch 9.0.0604
+Problem: Luacheckrc file is not recognized.
+Solution: Use lua filetype for luacheckrc. (closes #11236)
+
+Patch 9.0.0605
+Problem: Dump file missing.
+Solution: Add the missing dump file. (issue #11234)
+
+Patch 9.0.0606
+Problem: system() opens a terminal window when using the GUI and "!" is in
+ 'guioptions'.
+Solution: Do not use a terminal window when the SHELL_SILENT flag is used.
+ (closes #11202)
+
+Patch 9.0.0607
+Problem: Verbose echo message test fails on Mac OS.
+Solution: Skip the test on Mac OS.
+
+Patch 9.0.0608
+Problem: With spell checking, deleting a full stop at the end of a line
+ does not update SpellCap at the start of the next line.
+Solution: Update the next line when characters have been deleted. Also when
+ using undo.
+
+Patch 9.0.0609
+Problem: Blockedit test fails because of wrong indent.
+Solution: Adjust the expected text temporarily
+
+Patch 9.0.0610
+Problem: Global interrupt test fails when run under valgrind.
+Solution: Use TermWait().
+
+Patch 9.0.0611
+Problem: Tests delete files with a separate delete() call.
+Solution: Use deferred delete.
+
+Patch 9.0.0612
+Problem: Blockedit test passes with wrong result.
+Solution: Add a "vim9script" line to make indenting work.
+
+Patch 9.0.0613
+Problem: Running source tests leaves file behind.
+Solution: Add the "D" flag to writefile(). (Dominique Pellé, closes #11243)
+ Also do this for other writefile() calls and drop delete().
+
+Patch 9.0.0614
+Problem: SpellFileMissing autocmd may delete buffer.
+Solution: Disallow deleting the current buffer to avoid using freed memory.
+
+Patch 9.0.0615
+Problem: Using reduce() on a list from range() is a bit slow.
+Solution: Avoid materializing the list.
+
+Patch 9.0.0616
+Problem: Spell test fails because error message changed.
+Solution: Adjust expected error message.
+
+Patch 9.0.0617
+Problem: Calling function for reduce() has too much overhead.
+Solution: Only call clear_tv() when needed.
+
+Patch 9.0.0618
+Problem: Calling function for reduce() has too much overhead.
+Solution: Do not create a funccall_T every time.
+
+Patch 9.0.0619
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0620
+Problem: matchaddpos() can only add up to 8 matches.
+Solution: Allocate the array of positions. (closes #11248)
+
+Patch 9.0.0621
+Problem: Filetype test leaves file behind.
+Solution: Add deferred delete flag to writefile(). (Dominique Pellé,
+ closes #11249)
+
+Patch 9.0.0622
+Problem: matchaddpos() can get slow when adding many matches.
+Solution: Update the next available match ID when manually picking an ID and
+ remove check if the available ID can be used. (idea by Rick Howe)
+
+Patch 9.0.0623
+Problem: Error for modifying a const is not detected at compile time.
+Solution: Add TTFLAG_CONST and check for it in add() and extend().
+
+Patch 9.0.0624
+Problem: Leaking argument type array.
+Solution: Add allocated memory to type_gap.
+
+Patch 9.0.0625
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0626
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0627
+Problem: "const" and "final" both make the type a constant. (Daniel
+ Steinberg)
+Solution: Only have "const" make the type a constant.
+
+Patch 9.0.0628
+Problem: Coverity warns for not checking return value.
+Solution: Check the return value and simplify the code.
+
+Patch 9.0.0629
+Problem: Get an error for using const only when executing.
+Solution: Check for const at compile time for filter(), map(), remove(),
+ reverse(), sort() and uniq().
+
+Patch 9.0.0630
+Problem: In Vim9 script a numbered function cannot be called.
+Solution: Do not require "g:" before a numbered function name.
+ (closes #11254)
+
+Patch 9.0.0631
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0632
+Problem: Calling a function from an "expr" option has too much overhead.
+Solution: Add call_simple_func() and use it for 'foldexpr'
+
+Patch 9.0.0633
+Problem: FEAT_TITLE was removed but is still used.
+Solution: Remove FEAT_TITLE. (Naruhiko Nishino, closes #11256)
+
+Patch 9.0.0634
+Problem: Evaluating "expr" options has more overhead than needed.
+Solution: Use call_simple_func() for 'foldtext', 'includeexpr', 'printexpr',
+ "expr" of 'spellsuggest', 'diffexpr', 'patchexpr', 'balloonexpr',
+ 'formatexpr', 'indentexpr' and 'charconvert'.
+
+Patch 9.0.0635
+Problem: Build error and compiler warnings.
+Solution: Add missing change. Add type casts.
+
+Patch 9.0.0636
+Problem: Underline color does not work in terminals that don't send a
+ termresponse.
+Solution: Do output t_8u if it was set explicitly. (closes #11253)
+
+Patch 9.0.0637
+Problem: Syntax of commands in Vim9 script depends on +eval feature.
+Solution: Use same syntax with and without the +eval feature.
+
+Patch 9.0.0638
+Problem: Popup menu highlight wrong on top of preview popup. (Yegappan
+ Lakshmanan)
+Solution: Also check for the popup menu in screen_line().
+
+Patch 9.0.0639
+Problem: Checking for popup in screen_char() is too late, the attribute has
+ already been changed.
+Solution: Move check for popup to where screen_char() is called.
+
+Patch 9.0.0640
+Problem: Cannot scroll by screen line if a line wraps.
+Solution: Add the 'smoothscroll' option. Only works for CTRL-E and CTRL-Y
+ so far.
+
+Patch 9.0.0641
+Problem: Missing part of the new option code.
+Solution: Add missing WV_SMS.
+
+Patch 9.0.0642
+Problem: Breakindent test fails.
+Solution: Correct logic for resetting need_showbreak.
+
+Patch 9.0.0643
+Problem: Smoothscroll test fails.
+Solution: Check if skipcol changed.
+
+Patch 9.0.0644
+Problem: 'smoothscroll' is not copied to a new window on :split.
+Solution: Copy the option value. Add a test.
+
+Patch 9.0.0645
+Problem: CTRL-Y does not stop at line 1. (John Marriott)
+Solution: Stop at line 1 when 'smoothscroll' is not set. (closes #11261)
+
+Patch 9.0.0646
+Problem: with 'smoothscroll' set CTRL-E does not work properly when
+ 'foldmethod' is set to "indent". (Yee Cheng Chin)
+Solution: Merge the code for scrolling with folds and 'smoothscroll'.
+ (closes #11262)
+
+Patch 9.0.0647
+Problem: The 'splitscroll' option is not a good name.
+Solution: Rename 'splitscroll' to 'splitkeep' and make it a string option,
+ also supporting "topline". (Luuk van Baal, closes #11258)
+
+Patch 9.0.0648
+Problem: When using powershell input redirection does not work.
+Solution: Use a different shell command for powershell. (Yegappan
+ Lakshmanan, closes #11257)
+
+Patch 9.0.0649
+Problem: No indication when the first line is broken for 'smoothscroll'.
+Solution: Show "<<<" in the first line.
+
+Patch 9.0.0650
+Problem: Some tests are failing.
+Solution: Adjust for "<<<" showing up.
+
+Patch 9.0.0651
+Problem: Build fails without the +conceal feature.
+Solution: Rename called function.
+
+Patch 9.0.0652
+Problem: 'smoothscroll' not tested with 'number' and "n" in 'cpo'.
+Solution: Add tests, fix uncovered problem.
+
+Patch 9.0.0653
+Problem: BS and DEL do not work properly in an interactive shell. (Gary
+ Johnson)
+Solution: Adjust the length for replaced codes.
+
+Patch 9.0.0654
+Problem: Breakindent test fails.
+Solution: Temporarily accept wrong result.
+
+Patch 9.0.0655
+Problem: passing modifier codes to a shell running in the GUI. (Gary
+ Johnson)
+Solution: Include modifier codes into the key and drop the modifiers.
+
+Patch 9.0.0656
+Problem: Cannot specify another character to use instead of '@' at the end
+ of the window.
+Solution: Add "lastline" to 'fillchars'. (Martin Tournoij, closes #11264,
+ closes #10963)
+
+Patch 9.0.0657
+Problem: Too many #ifdefs.
+Solution: Graduate the +cmdwin feature. Now the tiny and small builds are
+ equal, drop the small build. (Martin Tournoij, closes #11268)
+
+Patch 9.0.0658
+Problem: Tiny build fails on Mac OS.
+Solution: Define FEAT_CLIPBOARD only for normal build.
+
+Patch 9.0.0659
+Problem: Wrong type of comment in SetSyn() function.
+Solution: Use Vim9 comment. (closes #11278)
+
+Patch 9.0.0660
+Problem: Mapping with CTRL keys does not work in the GUI.
+Solution: Recognize CSI next to K_SPECIAL. (closes #11275, closes #11270)
+
+Patch 9.0.0661
+Problem: Multi-byte "lastline" item in 'fillchars' does not work properly
+ when the window is two columns wide.
+Solution: Compute the text length correctly. (closes #11280)
+
+Patch 9.0.0662
+Problem: Concealed characters do not work correctly.
+Solution: Subtract boguscols instead of adding them. (closes #11273)
+
+Patch 9.0.0663
+Problem: Tests check for +cmdwin feature which is always present.
+Solution: Remove the checks. (closes #11287)
+
+Patch 9.0.0664
+Problem: Bad redrawing with spell checking, using "C" and "$" in 'cpo'.
+Solution: Do not redraw the next line when "$" is in 'cpo'. (closes #11285)
+
+Patch 9.0.0665
+Problem: Setting 'cmdheight' has no effect if last window was resized.
+Solution: Do apply 'cmdheight' when told to. Use the frame height instead
+ of the cmdline_row. (closes #11286)
+
+Patch 9.0.0666
+Problem: Spacing-combining characters handled as composing, causing text to
+ take more space than expected.
+Solution: Handle characters marked with "Mc" not as composing.
+ (closes #11282)
+
+Patch 9.0.0667
+Problem: ml_get error when 'splitkeep' is "screen". (Marius Gedminas)
+Solution: Check the botline is not too large. (Luuk van Baal,
+ closes #11293, closes #11292)
+
+Patch 9.0.0668
+Problem: CI on Mac M1 only uses clang
+Solution: Also run with gcc. (closes #11263)
+
+Patch 9.0.0669
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0670
+Problem: No space for command line when there is a tabline.
+Solution: Correct computation of where the command line should be.
+ (closes #11295)
+
+Patch 9.0.0671
+Problem: Negative topline using CTRL-Y with 'smoothscroll' and 'diff'.
+ (Ernie Rael)
+Solution: Only use 'smoothscroll' when 'wrap' is set.
+
+Patch 9.0.0672
+Problem: Cursor line only partly shows with 'smoothscroll' and 'scrolloff'
+ zero.
+Solution: Do not use 'smoothscroll' when adjusting the bottom of the window.
+ (closes #11269)
+
+Patch 9.0.0673
+Problem: First line not scrolled properly with 'smoothscroll' and
+ 'scrolloff' zero and using "k".
+Solution: Make sure the cursor position is visible.
+
+Patch 9.0.0674
+Problem: Build error with tiny version.
+Solution: Use PLINES_NOFILL macro.
+
+Patch 9.0.0675
+Problem: Search test screendump is outdated.
+Solution: Update the screendump for improved display.
+
+Patch 9.0.0676
+Problem: CI on Mac M1 with gcc actually uses clang.
+Solution: Remove the gcc task. (Ozaki Kiichi, closes #11297)
+
+Patch 9.0.0677
+Problem: Breakindent test accepts wrong result.
+Solution: Fix the number column and adjust the expected text.
+
+Patch 9.0.0678
+Problem: Using exclamation marks on :function.
+Solution: Use :func and :endfunc as usual.
+
+Patch 9.0.0679
+Problem: Tests failing with 'smoothscroll', 'number' and "n" in 'cpo'.
+Solution: Do not count number column in topline if columns are skipped.
+
+Patch 9.0.0680
+Problem: Tests failing with 'breakindent', 'number' and "n" in 'cpo'.
+Solution: Do count the number column in topline if 'breakindent' is set.
+
+Patch 9.0.0681
+Problem: "<<<" shows for 'smoothscroll' even when 'showbreak is set.
+Solution: When 'showbreak' is set do not display "<<<".
+
+Patch 9.0.0682
+Problem: Crash when popup with deleted timer is closed. (Igbanam
+ Ogbuluijah)
+Solution: Check the timer still exists. (closes #11301)
+
+Patch 9.0.0683
+Problem: Cannot specify a time for :echowindow.
+Solution: A count can be used to specify the display time. Add
+ popup_findecho().
+
+Patch 9.0.0684
+Problem: Skipped :exe command fails compilation on MS-Windows.
+Solution: Adjust return value when skipping.
+
+Patch 9.0.0685
+Problem: FORTIFY_SOURCE causes a crash in Vim9 script.
+Solution: Use a pointer to the first char. (Yee Cheng Chin, closes #11302)
+
+Patch 9.0.0686
+Problem: The right ALT key does not work on some MS-Windows keyboards.
+Solution: Adjust the modifiers based on GetKeyState(). (Anton Sharonov,
+ closes #11300)
+
+Patch 9.0.0687
+Problem: "export def" does not work in a nested block.
+Solution: Do not handle "export" with a separate function but in the same
+ command stack. (closes #11304)
+
+Patch 9.0.0688
+Problem: Debugger does not display the whole command.
+Solution: Set ea.cmd before checking for a breakpoint.
+
+Patch 9.0.0689
+Problem: Compiler warning for unused function.
+Solution: Add #ifdef. (John Marriott)
+
+Patch 9.0.0690
+Problem: Buffer size for expanding tab not correctly computed.
+Solution: Correctly use size of end character.
+
+Patch 9.0.0691
+Problem: lalloc(0) error in listchars test.
+Solution: Skip generating text for tab if tab_len is zero.
+
+Patch 9.0.0692
+Problem: PoE filter files are not recognized.
+Solution: Add a pattern to detect PoE filter files. (closes #11305)
+
+Patch 9.0.0693
+Problem: browse() first argument cannot be a bool.
+Solution: Use tv_get_bool_chk() instead of tv_get_number_chk().
+ (closes #11308)
+
+Patch 9.0.0694
+Problem: No native sound support on Mac OS.
+Solution: Add sound support for Mac OS. (Yee Cheng Chin, closes #11274)
+
+Patch 9.0.0695
+Problem: Failing check for dictionary type for const any.
+Solution: Check for any type properly. (closes #11310)
+
+Patch 9.0.0696
+Problem: It is unclear if the +rightleft and +arabic features are actively
+ being used.
+Solution: Disable the features, await feedback.
+
+Patch 9.0.0697
+Problem: Cursor in wrong position with Visual substitute.
+Solution: When restoring 'linebreak' mark the virtual column as invalid.
+ (closes #11309, closes #11311)
+
+Patch 9.0.0698
+Problem: VisVim is outdated, does not work with current Visual Studio.
+Solution: Remove VisVim. (Martin Tournoij)
+
+Patch 9.0.0699
+Problem: Tiny build fails.
+Solution: Add #ifdef.
+
+Patch 9.0.0700
+Problem: There is no real need for a "big" build.
+Solution: Move common features to "normal" build, less often used features
+ to the "huge" build. (Martin Tournoij, closes #11283)
+
+Patch 9.0.0701
+Problem: With 'smoothscroll' the cursor position s not adjusted in a long
+ line.
+Solution: Move the cursor further up or down in the line.
+
+Patch 9.0.0702
+Problem: Incomplete testing cursor position after change with 'linebreak'
+ set.
+Solution: Add a test and move test cases together. (closes #11313)
+
+Patch 9.0.0703
+Problem: Failing check for argument type for const any.
+Solution: Check for any type properly. (closes #11316)
+
+Patch 9.0.0704
+Problem: CI runs "tiny" and "small" builds, which are the same.
+Solution: Remove the "small" build. (Naruhiko Nishino, closes #11315)
+
+Patch 9.0.0705
+Problem: Virtual text truncation does not take padding into account.
+Solution: Subtract the padding from the available space. (closes #11318)
+
+Patch 9.0.0706
+Problem: :help in a narrow window always opens at the top.
+Solution: Respect 'splitbelow'. (closes #11319)
+
+Patch 9.0.0707
+Problem: With 'smoothscroll' and 'scrolloff' non-zero the cursor position
+ is not properly adjusted in a long line.
+Solution: Move the cursor further up or down in the line.
+
+Patch 9.0.0708
+Problem: :confirm does not work properly for a terminal buffer.
+Solution: Handle :confirm for a terminal buffer differently. (Yee Cheng
+ Chin, closes #11312)
+
+Patch 9.0.0709
+Problem: Virtual text "after" not correct with 'nowrap'.
+Solution: Do not display "after" text prop on the next line when 'wrap' is
+ off.
+
+Patch 9.0.0710
+Problem: Quitting/unloading/hiding a terminal buffer does not always work
+ properly.
+Solution: Avoid that ":q!" leaves an empty buffer behind. ":bunload!" also
+ kills the job and unloads the buffer. ":hide" does not unload the
+ buffer. (Yee Cheng Chin, closes #11323)
+
+Patch 9.0.0711
+Problem: SubStation Alpha files are not recognized.
+Solution: Add patterns for SubStation Alpha files. (closes #11332)
+
+Patch 9.0.0712
+Problem: Wrong column when calling setcursorcharpos() with zero lnum.
+Solution: Set the line number before calling buf_charidx_to_byteidx().
+ (closes #11329)
+
+Patch 9.0.0713
+Problem: <amatch> of MenuPopup event is expanded like a file name.
+Solution: Do not expand <amatch> for MenuPopup. (closes #11328)
+
+Patch 9.0.0714
+Problem: With 'nowrap' two virtual text below not displayed correctly.
+Solution: Set text_prop_follows before continuing. Correct for number
+ column. (closes #11333)
+
+Patch 9.0.0715
+Problem: Wrong argument for append() gives two error messages.
+Solution: When getting an error for a number argument don't try using it as
+ a string. (closes #11335)
+
+Patch 9.0.0716
+Problem: With 'nowrap' virtual text "after" does not scroll left.
+Solution: Skip part of the virtual text that is left of the window.
+ (closes #11320) Fix going beyond the last column of the window.
+
+Patch 9.0.0717
+Problem: Compiler warning for unused variable in tiny build.
+Solution: Add #ifdefs.
+
+Patch 9.0.0718
+Problem: Extra empty line between two virtual text "below" when 'wrap' and
+ 'number' are set.
+Solution: Reset "before" when there is no text in the screen line.
+ (closes #11334)
+
+Patch 9.0.0719
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0720
+Problem: MS-Windows GUI may have pixel dust from antialiasing.
+Solution: When a character changes also redraw the next one. (issue #8532)
+
+Patch 9.0.0721
+Problem: Virtual text "above" with padding not displayed correctly.
+Solution: Take padding into account when truncating. (closes #11340)
+
+Patch 9.0.0722
+Problem: Virtual text "after" does not show with 'list' set.
+Solution: Do not break out of the loop when another text prop follows.
+ (closes #11337)
+
+Patch 9.0.0723
+Problem: Extra empty line below virtual text when 'list' is set.
+Solution: Do not reset lcs_eol_one but set text_prop_follows. (closes #11339)
+
+Patch 9.0.0724
+Problem: Closure in compiled function gets same variable in block.
+Solution: At the end of a block to not always reset the variable count.
+ (issue #11094)
+
+Patch 9.0.0725
+Problem: Virtual text "after" wraps to next line even when 'wrap' is off
+ and 'list' is set.
+Solution: Do not use the minimum width when 'wrap' is off. (issue #11336)
+
+Patch 9.0.0726
+Problem: Looping over list of lists and changing the list contents works in
+ Vim9 script, not in a compiled function.
+Solution: Mark the loop variable final instead of const. (closes #11347)
+
+Patch 9.0.0727
+Problem: Help in the repository differs from patched version too much.
+Solution: Make a patch for a few help files.
+
+Patch 9.0.0728
+Problem: extend() test fails.
+Solution: Item is final, not const.
+
+Patch 9.0.0729
+Problem: The rightleft and arabic features are disabled.
+Solution: Re-enable the features, some users want to use the functionality.
+
+Patch 9.0.0730
+Problem: Startup test fails with right-left feature.
+Solution: Do not delete test file too early.
+
+Patch 9.0.0731
+Problem: clang-tidy configuration files are not recognized.
+Solution: Recognize clang-tidy files as yaml. (closes #11350)
+
+Patch 9.0.0732
+Problem: No check for white space before and after "=<<". (Doug Kearns)
+Solution: Check for white space in Vim9 script. (closes #11351)
+
+Patch 9.0.0733
+Problem: Use of strftime() is not safe.
+Solution: Check the return value of strftime(). Use a larger buffer and
+ correctly pass the available space. (Dominique Pellé, closes
+ #11348)
+
+Patch 9.0.0734
+Problem: Cursor position invalid when scrolling with 'smoothscroll' set.
+ (Ernie Rael)
+Solution: Add w_valid_skipcol and clear flags when it changes. Adjust
+ w_skipcol after moving the cursor.
+
+Patch 9.0.0735
+Problem: Breakindent and scrolloff tests fail.
+Solution: Temporarily skip the assertions.
+
+Patch 9.0.0736
+Problem: Quickfix listing does not handle very long messages.
+Solution: Use a growarray instead of a fixed size buffer. (Yegappan
+ Lakshmanan, closes #11357)
+
+Patch 9.0.0737
+Problem: Lisp word only recognized when a space follows.
+Solution: Also match a word at the end of a line. Rename the test. Use a
+ compiled function to avoid backslashes.
+
+Patch 9.0.0738
+Problem: Cannot suppress completion "scanning" messages.
+Solution: Add the "C" flag in 'shortmess'. (Bjorn Linse, closes #11354)
+
+Patch 9.0.0739
+Problem: Mouse column not correctly used for popup_setpos.
+Solution: Adjust off-by-one error and handle Visual line selection properly.
+ (Yee Cheng Chin, closes #11356)
+
+Patch 9.0.0740
+Problem: prop_add_list() gives multiple errors for invalid argument.
+Solution: Only give one error message.
+
+Patch 9.0.0741
+Problem: Cannot specify an ID for each item with prop_add_list(). (Sergey
+ Vlasov)
+Solution: Add an optional fifth number to the item. (closes #11360)
+
+Patch 9.0.0742
+Problem: Reading past end of the line when compiling a function with
+ errors.
+Solution: Do not return an invalid pointer. Fix skipping redirection.
+
+Patch 9.0.0743
+Problem: Starting cscope on Unix does not quote the arguments correctly.
+ (Gary Johnson)
+Solution: Move the final quote after the arguments.
+
+Patch 9.0.0744
+Problem: In script in autoload dir exported variable is not found. (Doug
+ Kearns)
+Solution: Find the variable with the "script#" prefix. (closes #11361)
+
+Patch 9.0.0745
+Problem: Wrong cursor position when using "gj" and "gk" in a long line.
+Solution: Adjust computations for the cursor position and skipcol. Re-enable
+ tests that pass now, disable failing breakindent test.
+
+Patch 9.0.0746
+Problem: Breakindent test cases are commented out.
+Solution: Adjust expected result to slightly different behavior. Correct
+ computations for cursor position.
+
+Patch 9.0.0747
+Problem: Too many #ifdefs.
+Solution: Graduate the +cmdline_info feature. (Martin Tournoij,
+ closes #11330)
+
+Patch 9.0.0748
+Problem: Kitty may send key without modifiers with CSI u code.
+Solution: Handle CSI u code without modifiers. (Trygve Aaberge,
+ closes #11364)
+
+Patch 9.0.0749
+Problem: Alloc/free of buffer for each quickfix entry is inefficient.
+Solution: Use a shared grow array. (Yegappan Lakshmanan, closes #11365)
+
+Patch 9.0.0750
+Problem: Crash when popup closed in callback. (Maxim Kim)
+Solution: In syntax_end_parsing() check that syn_block is valid.
+
+Patch 9.0.0751
+Problem: 'scrolloff' does not work well with 'smoothscroll'.
+Solution: Make positioning the cursor a bit better. Rename functions.
+
+Patch 9.0.0752
+Problem: Rprofile files are not recognized.
+Solution: Recognize Rprofile files as "r". (closes #11369)
+
+Patch 9.0.0753
+Problem: Some Ex commands are not in the help index.
+Solution: Add the missing commands. Add a script to check all Ex commands
+ are in the help index. (Yee Cheng Chin, closes #11371)
+
+Patch 9.0.0754
+Problem: 'indentexpr' overrules lisp indenting in one situation.
+Solution: Add "else" to keep the lisp indent. (issue #11327)
+
+Patch 9.0.0755
+Problem: Huge build on macos always fails on CI.
+Solution: Temporarily disable the perl interface.
+
+Patch 9.0.0756
+Problem: No autocmd event for changing text in a terminal window.
+Solution: Add TextChangedT. (Shougo Matsushita, closes #11366)
+
+Patch 9.0.0757
+Problem: Line number not visible with 'smoothscroll', 'nu' and 'rnu'.
+Solution: Put the ">>>" after the line number instead of on top.
+
+Patch 9.0.0758
+Problem: "precedes" from 'listchars' overwritten by <<< for 'smoothscroll'.
+Solution: Keep the "precedes" character.
+
+Patch 9.0.0759
+Problem: Huge build on macos does not use Perl.
+Solution: Re-enable the Perl interface using "dynamic". (closes #11375)
+
+Patch 9.0.0760
+Problem: Display test for 'listchars' "precedes" fails.
+Solution: Correct the expected result.
+
+Patch 9.0.0761
+Problem: Cannot use 'indentexpr' for Lisp indenting.
+Solution: Add the 'lispoptions' option.
+
+Patch 9.0.0762
+Problem: Build failure.
+Solution: Add missing change.
+
+Patch 9.0.0763
+Problem: MS-Windows: warning for using int for size_t.
+Solution: Declare variable as size_t.
+
+Patch 9.0.0764
+Problem: Indent and option tests fail.
+Solution: Change OP_INDENT. Add entry to options test table.
+
+Patch 9.0.0765
+Problem: With a Visual block a put command column may go negative.
+Solution: Check that the column does not become negative.
+
+Patch 9.0.0766
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0767
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0768
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0769
+Problem: Too many delete() calls in tests.
+Solution: Use deferred delete where possible.
+
+Patch 9.0.0770
+Problem: Quickfix commands may keep memory allocated.
+Solution: Free memory when it's a bit much. (Yegappan Lakshmanan,
+ closes #11379)
+
+Patch 9.0.0771
+Problem: Cannot always tell the difference between tex and rexx files.
+Solution: Recognize tex by a leading backslash. (Martin Tournoij,
+ closes #11380)
+
+Patch 9.0.0772
+Problem: The libvterm code is outdated.
+Solution: Include libvterm changes from revision 790 to 801.
+
+Patch 9.0.0773
+Problem: Huge build on MacOS uses dynamic Perl.
+Solution: Use built-in Perl, uninstall the brew one. (closes #11382)
+
+Patch 9.0.0774
+Problem: The libvterm code is outdated.
+Solution: Include libvterm changes from revision 802 to 817. Revert some
+ changes made for C89.
+
+Patch 9.0.0775
+Problem: MS-Windows: mouse scrolling not supported in the console.
+Solution: Add event handling for mouse scroll events. (Christopher
+ Plewright, closes #11374)
+
+Patch 9.0.0776
+Problem: MSVC can't have field name "small".
+Solution: Rename small to smallfont.
+
+Patch 9.0.0777
+Problem: Code is indented too much.
+Solution: Use an early return. (Yegappan Lakshmanan, closes #11386)
+
+Patch 9.0.0778
+Problem: Indexing of unknown const type fails during compilation.
+Solution: Check for "any" properly. (closes #11389)
+
+Patch 9.0.0779
+Problem: lsl and lm3 file extensions are not recognized.
+Solution: Add *.lsl and *.lm3 patterns. (Doug Kearns, closes #11384)
+
+Patch 9.0.0780
+Problem: 'scroll' value computed in unexpected location.
+Solution: Compute 'scroll' when the window height is changed. (Luuk van
+ Baal, closes #11387)
+
+Patch 9.0.0781
+Problem: Workaround to rename "small" to "smallfont" is clumsy.
+Solution: Undefine "small" after including windows.h. (Ken Takata)
+
+Patch 9.0.0782
+Problem: OpenVPN files are not recognized.
+Solution: Add patterns for OpenVPN files. (closes #11391)
+
+Patch 9.0.0783
+Problem: ":!" doesn't do anything but does update the previous command.
+Solution: Do not have ":!" change the previous command. (Martin Tournoij,
+ closes #11372)
+
+Patch 9.0.0784
+Problem: Text prop "above" not displayed correctly with 'number' and "n" in
+ 'cpo'.
+Solution: Draw the line number column until the line text is reached.
+
+Patch 9.0.0785
+Problem: Memory leak with empty shell command.
+Solution: Free the allocated memory when bailing out.
+
+Patch 9.0.0786
+Problem: User command does not get number from :tab modifier.
+Solution: Include the number. (closes #11393, closes #6901)
+
+Patch 9.0.0787
+Problem: MS-Windows: mouse scrolling in terminal misbehaves without dll.
+Solution: Add #ifdef as a temporary solution. (Christopher Plewright,
+ closes #11392)
+
+Patch 9.0.0788
+Problem: ModeChanged autocmd not executed when Visual mode is ended with
+ CTRL-C.
+Solution: Do not trigger the autocmd when got_int is set. (closes #11394)
+
+Patch 9.0.0789
+Problem: Dummy buffer ends up in a window.
+Solution: Disallow navigating to a dummy buffer.
+
+Patch 9.0.0790
+Problem: Test for dummy buffer does not always produce the E86 error.
+Solution: Do not check if the error is produced.
+
+Patch 9.0.0791
+Problem: At the hit-Enter prompt the End and Home keys may not work.
+Solution: Use the special "@" code for End and Home, like it was done for
+ the cursor keys in patch 8.2.2246. (Trygve Aaberge, closes #11396)
+
+Patch 9.0.0792
+Problem: MS-Windows: compiler complains about unused function.
+Solution: Add #ifdef. (John Marriott)
+
+Patch 9.0.0793
+Problem: MS-Windows: mouse scroll events only work with the dll.
+Solution: Accept CSI codes for MS-Windows without the GUI. (Christopher
+ Plewright, closes #11401)
+
+Patch 9.0.0794
+Problem: There is no way to find out if an escape sequence with
+ modifyOtherKeys has been seen.
+Solution: Add a notice with ":verbose map".
+
+Patch 9.0.0795
+Problem: readblob() always reads the whole file.
+Solution: Add arguments to read part of the file. (Ken Takata,
+ closes #11402)
+
+Patch 9.0.0796
+Problem: Mapping test fails in some situations.
+Solution: Find the line with the verbose information.
+
+Patch 9.0.0797
+Problem: Order of assert function arguments is reverted.
+Solution: Swap the arguments. (closes #11399)
+
+Patch 9.0.0798
+Problem: Clang format configuration files are not recognized.
+Solution: Use yaml for Clang format configuration files. (Marwin Glaser,
+ closes #11398)
+
+Patch 9.0.0799
+Problem: In compiled function ->() on next line not recognized.
+Solution: Also check for "(". (closes #11405)
+
+Patch 9.0.0800
+Problem: Compiler complains about repeated typedef.
+Solution: Remove one typedef.
+
+Patch 9.0.0801
+Problem: The modifyOtherKeys flag is set when it should not.
+Solution: Do not handle special key codes with a modifier value above 16 as
+ a modifyOtherKeys value. (issue #11403)
+
+Patch 9.0.0802
+Problem: MS-Windows: cannot map console mouse scroll events.
+Solution: Change CSI to K_SPECIAL when checking for a mapping. (Christopher
+ Plewright, closes #11410)
+
+Patch 9.0.0803
+Problem: readblob() cannot read from character device.
+Solution: Use S_ISCHR() to not check the size. (Ken Takata, closes #11407)
+
+Patch 9.0.0804
+Problem: Crash when trying to divide the largest negative number by -1.
+Solution: Handle this case specifically.
+
+Patch 9.0.0805
+Problem: Filetype autocmd may cause freed memory access.
+Solution: Set the quickfix-busy flag while filling the buffer.
+
+Patch 9.0.0806
+Problem: 'langmap' works differently when there are modifiers.
+Solution: Only apply 'langmap' to a character where modifiers have no
+ effect. (closes #11395, closes #11404)
+
+Patch 9.0.0807
+Problem: With 'smoothscroll' typing "0" may not go to the first column.
+Solution: Recompute w_cline_height when needed. Do not scroll up when it
+ would move the cursor.
+
+Patch 9.0.0808
+Problem: jsonnet filetype detection has a typo.
+Solution: Change "libjsonnet" to "libsonnet". (Maxime Brunet, closes #11412)
+
+Patch 9.0.0809
+Problem: Test for job writing to buffer fails.
+Solution: Correct w_topline when deleting a buffer line.
+
+Patch 9.0.0810
+Problem: readblob() returns empty when trying to read too much.
+Solution: Return what is available.
+
+Patch 9.0.0811
+Problem: Error if :echowin is preceded by a command modifier.
+Solution: Do not give an error for range when there is a modifier.
+ (closes #11414)
+
+Patch 9.0.0812
+Problem: GUI mouse scrollwheel mappings don't work.
+Solution: Add check for "gui.in_use". (Christopher Plewright, closes #11418)
+
+Patch 9.0.0813
+Problem: Kitty terminal is not recognized.
+Solution: Recognize Kitty by the termresponse and then do not set
+ seenModifyOtherKeys, since Kitty doesn't support that.
+ (issue #11413)
+
+Patch 9.0.0814
+Problem: Aws config files are not recognized.
+Solution: Use "confini" for aws config files. (Justin M. Keyes,
+ closes #11416)
+
+Patch 9.0.0815
+Problem: ":!" does not switch to the alternate screen.
+Solution: For ":!" don't clear the previous command. (closes #11420,
+ closes #11409)
+
+Patch 9.0.0816
+Problem: CTRL-Z at end of file is always dropped.
+Solution: Add the 'endoffile' option, like the 'endofline' option.
+ (closes #11408, closes #11397)
+
+Patch 9.0.0817
+Problem: Build error.
+Solution: correct variable name.
+
+Patch 9.0.0818
+Problem: "!ls" does not work.
+Solution: Do not free memory that is in use.
+
+Patch 9.0.0819
+Problem: Still a build error, tests are failing.
+Solution: Correct recent changes. Add missing init for 'eof'.
+
+Patch 9.0.0820
+Problem: Memory leak with empty shell command.
+Solution: Free the empty string.
+
+Patch 9.0.0821
+Problem: Memory leak with empty shell command.
+Solution: Free the empty string.
+
+Patch 9.0.0822
+Problem: Crash when dragging the statusline with a mapping.
+Solution: Check for valid window pointer. (issue #11427)
+
+Patch 9.0.0823
+Problem: Mouse drag test fails.
+Solution: Only reset the mouse click flag when actually switching to another
+ tab page. Disable test that keeps failing.
+
+Patch 9.0.0824
+Problem: Crash when using win_move_separator() in other tab page.
+Solution: Check for valid window in current tab page.
+ (closes #11479, closes #11427)
+
+Patch 9.0.0825
+Problem: Cannot drag an entry in the tabpage line.
+Solution: Clear dragwin instead of got_click. (closes #11483,
+ closes #11482)
+
+Patch 9.0.0826
+Problem: If 'endofline' is set the CTRL-Z may be written in the wrong
+ place.
+Solution: Write CTRL-Z at the end of the file. Update the help to explain
+ the possibilities better. (Ken Takata, closes #11486)
+
+Patch 9.0.0827
+Problem: The <Home> key in tmux doesn't work when 'term' is set to "xterm".
+ (Dominique Pellé)
+Solution: Only use '@' in a termcap key entry for "1" when ";" follows.
+ (closes #11429)
+
+Patch 9.0.0828
+Problem: Various typos.
+Solution: Correct typos. (closes #11432)
+
+Patch 9.0.0829
+Problem: Wrong counts in macro comment.
+Solution: Update the value counts. (closes #11480)
+
+Patch 9.0.0830
+Problem: Compiling with Perl on Mac 12 fails.
+Solution: Suppress infinite warnings. (closes #11499)
+
+Patch 9.0.0831
+Problem: Compiler warning for redefining HAVE_DUP.
+Solution: Undefine HAVE_DUP if needed. (Ozaki Kiichi, closes #11484)
+
+Patch 9.0.0832
+Problem: Deprecation warning causes build failure.
+Solution: Suppress deprecation warning. (closes #11503)
+
+Patch 9.0.0833
+Problem: Mac: no +sound feature in huge build.
+Solution: Enable +sound in Mac huge build. (closes #11497)
+
+Patch 9.0.0834
+Problem: Warning for missing return type.
+Solution: Add "int". (San James, closes #11496)
+
+Patch 9.0.0835
+Problem: The window title is not redrawn when 'endoffile' changes.
+Solution: redraw the window title when 'endoffile' is changed. (Ken Takata,
+ closes #11488)
+
+Patch 9.0.0836
+Problem: Wrong error when using extend() with funcref.
+Solution: Better check the variable type. (closes #11468, closes #11455)
+
+Patch 9.0.0837
+Problem: append() reports failure when not appending anything.
+Solution: Only report failure when appending something. (closes #11498)
+
+Patch 9.0.0838
+Problem: Compiler warnings for unused variables.
+Solution: Adjust #ifdef and remove unused variables. (John Marriott)
+
+Patch 9.0.0839
+Problem: Test may fail depending on sequence of events.
+Solution: Accept error codes in either order. (Yee Cheng Chin,
+ closes #11510)
+
+Patch 9.0.0840
+Problem: Cannot change a slice of a const list. (Takumi KAGIYAMA)
+Solution: Remove the const flag from the slice type. (closes #11490)
+
+Patch 9.0.0841
+Problem: deletebufline() does not always return 1 on failure.
+Solution: Refactor the code to make it work more predictable. (closes #11511)
+
+Patch 9.0.0842
+Problem: Unicode range for Apple SF symbols is outdated.
+Solution: Update to SF Symbols 4. (Yee Cheng Chin, closes #11474)
+
+Patch 9.0.0843
+Problem: VHS tape files are not recognized.
+Solution: Add a filetype pattern. (Carlos Alexandro Becker, closes #11452)
+
+Patch 9.0.0844
+Problem: Handling 'statusline' errors is spread out.
+Solution: Pass the option name to the lower levels so the option can be
+ reset there when an error is encountered. (Luuk van Baal,
+ closes #11467)
+
+Patch 9.0.0845
+Problem: Shell command with just space gives strange error.
+Solution: Skip white space at start of the argument. (Christian Brabandt,
+ Shane-XB-Qian, closes #11515, closes #11495)
+
+Patch 9.0.0846
+Problem: Using assert_fails() may cause hit-enter prompt.
+Solution: Set no_wait_return. (closes #11522)
+
+Patch 9.0.0847
+Problem: CI: not totally clear what MS-Windows version is used.
+Solution: Show the Windows version. (Ken Takata, closes #11524)
+
+Patch 9.0.0848
+Problem: Help item for --log argument is not aligned nicely.
+Solution: Add a Tab. (Ken Takata, closes #11521)
+
+Patch 9.0.0849
+Problem: Terminal mouse test is a bit flaky.
+Solution: Add WaitFor() calls. (James McCoy closes #11519) Tune wait times
+ to reduce flakiness.
+
+Patch 9.0.0850
+Problem: MS-Windows Terminal has unstable color control.
+Solution: Do not try to read the old command prompt colortable, use modern
+ VT sequences. (Christopher Plewright, closes #11450,
+ closes #11373)
+
+Patch 9.0.0851
+Problem: Terminal mouse test is still flaky.
+Solution: Also use WaitForAssert().
+
+Patch 9.0.0852
+Problem: Crypt test is skipped if xxd is not found.
+Solution: Find xxd where it was supposed to be build.
+
+Patch 9.0.0853
+Problem: Terminal mouse test is still flaky on MacOS M1.
+Solution: Also wait for the file to have some contents.
+
+Patch 9.0.0854
+Problem: No proper test for what 9.0.0846 fixes.
+Solution: Run test in a terminal so that the hit-enter prompt can show up.
+ (closes #11523)
+
+Patch 9.0.0855
+Problem: Comment not located above the code it refers to.
+Solution: Move the comment. (closes #11527)
+
+Patch 9.0.0856
+Problem: MS-Windows: executable not found when running individual test.
+Solution: Also look for vimd.exe. (Christopher Plewright, closes #11525)
+
+Patch 9.0.0857
+Problem: Selecting MSVC 2017 does not set $PLATFORM.
+Solution: Use $VSCMD_ARG_TGT_ARCH. (Ken Takata, closes #11485)
+
+Patch 9.0.0858
+Problem: "!!sort" in a closed fold sorts too many lines.
+Solution: Round to end of fold after adding the line count. (closes #11487)
+
+Patch 9.0.0859
+Problem: Compiler warning for unused variable.
+Solution: Add #ifdef.
+
+Patch 9.0.0860
+Problem: MS-Windows: windres fails with clang 15.0.4.
+Solution: Use llvm-windres. (John Marriott)
+
+Patch 9.0.0861
+Problem: Solution for "!!sort" in closed fold is not optimal.
+Solution: Use a different range instead of the subtle difference in handling
+ a range with an offset. (issue #11487)
+
+Patch 9.0.0862
+Problem: Default value of 'endoffile' is wrong.
+Solution: The default must be 'noendoffile'.
+
+Patch 9.0.0863
+Problem: col() and charcol() only work for the current window.
+Solution: Add an optional winid argument. (Yegappan Lakshmanan,
+ closes #11466, closes #11461)
+
+Patch 9.0.0864
+Problem: Crash when using "!!" without a previous shell command.
+Solution: Check "prevcmd" is not NULL. (closes #11487)
+
+Patch 9.0.0865
+Problem: Duplicate arguments are not always detected.
+Solution: Expand to full path before comparing arguments. (Nir Lichtman,
+ closes #11505, closes #9402)
+
+Patch 9.0.0866
+Problem: No test for what patch 8.2.2207 fixes.
+Solution: Add a test case. (closes #11531)
+
+Patch 9.0.0867
+Problem: Wildmenu redrawing code is spread out.
+Solution: Refactor to move code together. (closes #11528)
+
+Patch 9.0.0868
+Problem: MS-Windows: after Vim exits console resizing does not work
+ properly.
+Solution: Restore screen behavior checks for various WT and VTP
+ combinations. (Christopher Plewright, closes #11526,
+ closes #11507)
+
+Patch 9.0.0869
+Problem: Bogus error when string used after :elseif.
+Solution: Do not consider a double quote the start of a comment.
+ (closes #11534)
+
+Patch 9.0.0870
+Problem: Get E967 when using text property in quickfix window. (Sergey
+ Vlasov)
+Solution: Do not add an extra NUL and compute the text length correctly.
+ (closes #11513)
+
+Patch 9.0.0871
+Problem: Using freed memory when clearing augroup at more prompt.
+Solution: Delay clearing augroup until it's safe. (closes #11441)
+
+Patch 9.0.0872
+Problem: Code is indented more than needed.
+Solution: Return early. (Yegappan Lakshmanan, closes #11538)
+
+Patch 9.0.0873
+Problem: Using freed memory when executing mapclear at the more prompt.
+Solution: Do not clear mappings while listing them. (closes #11438)
+
+Patch 9.0.0874
+Problem: Using freed memory when executing unmenu at the more prompt.
+Solution: Do not clear menus while listing them. (closes #11439)
+
+Patch 9.0.0875
+Problem: Using freed memory when executing delfunc at the more prompt.
+Solution: Check function list not changed in another place. (closes #11437)
+
+Patch 9.0.0876
+Problem: Code is indented more than needed.
+Solution: Split ExpandEscape() in two. (Yegappan Lakshmanan, closes #11539)
+
+Patch 9.0.0877
+Problem: Using freed memory with :comclear while listing commands.
+Solution: Bail out when the command list has changed. (closes #11440)
+
+Patch 9.0.0878
+Problem: Coverity warns for dead code.
+Solution: Remove the dead code.
+
+Patch 9.0.0879
+Problem: Unnecessary nesting in makefile.
+Solution: Join "else" and "ifeq". (Ken Takata, closes #11547)
+
+Patch 9.0.0880
+Problem: Preprocessor indenting is off.
+Solution: Adjust preprocessor indentation. (Ken Takata, closes #11546)
+
+Patch 9.0.0881
+Problem: Cannot get the currently showing mouse shape.
+Solution: Add getmouseshape().
+
+Patch 9.0.0882
+Problem: Using freed memory after SpellFileMissing autocmd uses bwipe.
+Solution: Bail out if the window no longer exists.
+
+Patch 9.0.0883
+Problem: A silent mapping may cause dots on the command line.
+Solution: Don't show dots for completion if they are not going to be removed
+ again. (closes #11501)
+
+Patch 9.0.0884
+Problem: Mouse shape remains in op-pending mode after failed change.
+Solution: Reset finish_op and restore it. (closes #11545)
+
+Patch 9.0.0885
+Problem: Informational message has an error message number.
+Solution: Use a message without an error number. (closes #11530)
+
+Patch 9.0.0886
+Problem: Horizontal mouse scroll only works in the GUI.
+Solution: Make horizontal mouse scroll also work in a terminal.
+ (Christopher Plewright, closes #11448)
+
+Patch 9.0.0887
+Problem: Cannot easily try out what codes various keys produce.
+Solution: Add a script to gather key code information, with an initial list
+ of codes to compare with.
+
+Patch 9.0.0888
+Problem: MS-Windows GUI: CTRL-] does not work on Swiss keyboard.
+Solution: Check the key code and don't consider it as a dead key. (Aedin
+ Louis Xavier, closes #11556)
+
+Patch 9.0.0889
+Problem: Keycode check script has a few flaws.
+Solution: Sort on terminal name. Ignore XTGETTCAP responses. Check for
+ version and status response. Update entries.
+
+Patch 9.0.0890
+Problem: No test for what patch 9.0.0827 fixes.
+Solution: Add a test (still doesn't fail when fix is reverted).
+
+Patch 9.0.0891
+Problem: Virtual text below after match has wrong highlight.
+Solution: Restore search_attr only after the virtual text.
+ (closes #11446)
+
+Patch 9.0.0892
+Problem: May redraw when not needed, causing slow scrolling.
+Solution: Do not redraw when w_skipcol doesn't change. When w_skipcol
+ changes only redraw from the top. (issue #11559)
+
+Patch 9.0.0893
+Problem: 'smoothscroll' cursor calculations wrong when 'number' is set.
+Solution: Correct the code that computes the width. (closes #11492)
+
+Patch 9.0.0894
+Problem: Virtual text property highlight ignores window background.
+Solution: Combine text prop attribute with win_attr into extra_attr.
+ (closes #11462)
+
+Patch 9.0.0895
+Problem: File renamed twice in test; missing feature check.
+Solution: Remove a rename() call. Add check for cryptv feature.
+ (closes #11564)
+
+Patch 9.0.0896
+Problem: Test for home key fails when 'term' is "tmux".
+Solution: Only save termcap entries that exist. Adjust code for xHome to
+ what xterm uses. (closes #11566)
+
+Patch 9.0.0897
+Problem: Clinical Quality Language files are not recognized.
+Solution: Add the "*.cql" pattern. (Matthew Gramigna, closes #11452)
+
+Patch 9.0.0898
+Problem: With 'smoothscroll' cursor is one screen line too far down. (Ernie
+ Rael)
+Solution: Add a test that currently has the wrong result so that a fix can
+ be made. (issue #11436)
+
+Patch 9.0.0899
+Problem: The builtin terminals are in one long list.
+Solution: Refactor into multiple lists and an index of the lists.
+
+Patch 9.0.0900
+Problem: Cursor moves too far with 'smoothscroll'.
+Solution: Only move as far as really needed. (Yee Cheng Chin, closes #11504)
+
+Patch 9.0.0901
+Problem: Setting w_leftcol and handling side effects is confusing.
+Solution: Use a function to set w_leftcol() and handle side effects.
+
+Patch 9.0.0902
+Problem: Some mouse scroll code is not in a good place.
+Solution: Refactor the code. (Christopher Plewright, closes #11561)
+
+Patch 9.0.0903
+Problem: Key code checker doesn't check modifyOtherKeys resource.
+Solution: Request the modifyOtherKeys resource value. Drop resource DCS
+ responses.
+
+Patch 9.0.0904
+Problem: Various comment and indent flaws.
+Solution: Improve comments and indenting.
+
+Patch 9.0.0905
+Problem: Virtual text after the line wraps when 'wrap' is off.
+Solution: Only set text_prop_follows when wrapping. (closes #11463)
+
+Patch 9.0.0906
+Problem: Mouse scroll code is not optimal.
+Solution: Properly organise Normal mode, Insert mode and common code.
+ (Christopher Plewright, closes #11572)
+
+Patch 9.0.0907
+Problem: Restoring window after WinScrolled may fail.
+Solution: Lock the window layout when triggering WinScrolled.
+
+Patch 9.0.0908
+Problem: With 'smoothscroll' cursor may end up in wrong position.
+Solution: Correct the computation of screen lines. (Yee Cheng Chin,
+ closes #11502)
+
+Patch 9.0.0909
+Problem: Error message for layout change does not match action.
+Solution: Pass the command to where the error is given. (closes #11573)
+
+Patch 9.0.0910
+Problem: Setting lines in another buffer may not work well.
+Solution: Make sure the buffer being changed has a window. (issue #11558)
+
+Patch 9.0.0911
+Problem: With 'smoothscroll' set mouse click position may be wrong.
+Solution: Adjust computations for w_skipcol. (Yee Cheng Chin, closes #11514)
+
+Patch 9.0.0912
+Problem: libvterm with modifyOtherKeys level 2 does not match xterm.
+Solution: Adjust key code escape sequences to be the same as what xterm
+ sends in modifyOtherKeys level 2 mode. Check the value of
+ no_reduce_keys before using it.
+
+Patch 9.0.0913
+Problem: Only a change in the current window triggers the WinScrolled
+ event.
+Solution: Trigger WinScrolled if any window scrolled or changed size.
+ (issue #11576)
+
+Patch 9.0.0914
+Problem: deletebufline() may move marks in the wrong window.
+Solution: Find a window for the buffer being changed. (closes #11583)
+
+Patch 9.0.0915
+Problem: WinScrolled may trigger immediately when defined.
+Solution: Initialize the fields in all windows. (closes #11582)
+
+Patch 9.0.0916
+Problem: getbufline() is inefficient for getting a single line.
+Solution: Add getbufoneline().
+
+Patch 9.0.0917
+Problem: The WinScrolled autocommand event is not enough.
+Solution: Add WinResized and provide information about what changed.
+ (closes #11576)
+
+Patch 9.0.0918
+Problem: MS-Windows: modifier keys do not work with mouse scroll events.
+Solution: Use K_SPECIAL instead of CSI for the modifier keys. (Christopher
+ Plewright, closes #11587)
+
+Patch 9.0.0919
+Problem: Build failure with tiny features.
+Solution: Adjust #ifdef's.
+
+Patch 9.0.0920
+Problem: Cannot find an import prefixed with "s:". (Doug Kearns)
+Solution: Skip over the "s:". (closes #11585)
+
+Patch 9.0.0921
+Problem: Missing defined(PROTO) in #ifdef.
+Solution: Adjust #ifdef so that proto works with different features.
+ Clean up some preprocessor indenting.
+
+Patch 9.0.0922
+Problem: Mermaid files are not recognized.
+Solution: Add patterns for Mermaid. (Crag MacEachern)
+
+Patch 9.0.0923
+Problem: Second SIGWINCH signal may be ignored.
+Solution: When set_shellsize() is busy when called then run the inner code
+ again when it's done. (issue #424)
+
+Patch 9.0.0924
+Problem: The first termcap entry of a builtin termcap is not used.
+Solution: Remove increment that was previously skipping the KS_NAME entry.
+
+Patch 9.0.0925
+Problem: Two conditions are always false.
+Solution: Remove the conditions. Update return value types to make clear
+ what could be returned. (closes #11593)
+
+Patch 9.0.0926
+Problem: Coverity warns for not using return value of dict_add().
+Solution: When dict_add() fails then don't call hash_remove().
+
+Patch 9.0.0927
+Problem: Coverity warns for using a NULL pointer.
+Solution: Check for memory allocation failure.
+
+Patch 9.0.0928
+Problem: Using Ruby LDFLAGS may cause build problems.
+Solution: Do not add Ruby LDFLAGS to Vim's LDFLAGS. (Zdenek Dohnal,
+ closes #11592)
+
+Patch 9.0.0929
+Problem: Build failure with tiny version. (Tony Mechelynck)
+Solution: Add #ifdef.
+
+Patch 9.0.0930
+Problem: Cannot debug the Kitty keyboard protocol with TermDebug.
+Solution: Add Kitty keyboard protocol support to the libvterm fork.
+ Recognize the escape sequences that the protocol generates. Add
+ the 'keyprotocol' option to allow the user to specify for which
+ terminal what protocol is to be used, instead of hard-coding this.
+ Add recognizing the kitty keyboard protocol status.
+
+Patch 9.0.0931
+Problem: MS-Windows: mouse column limited to 223.
+Solution: Use two bytes for each mouse coordinate. Add the mouse position
+ to scroll events. (Christopher Plewright, closes #11597)
+
+Patch 9.0.0932
+Problem: Oblivion files are not recognized.
+Solution: Recognize Oblivion files and alike as "obse". (closes #11540)
+
+Patch 9.0.0933
+Problem: Kitty shows "already at oldest change" on startup.
+Solution: When receiving the keyboard protocol state return the ignore key.
+ (closes #11601)
+
+Patch 9.0.0934
+Problem: Various code formatting issues.
+Solution: Improve code formatting.
+
+Patch 9.0.0935
+Problem: When using dash it may not be recognize as filetype "sh".
+Solution: Add checks for "dash". (Eisuke Kawashima, closes #11600)
+
+Patch 9.0.0936
+Problem: Wrong type for "isunnamed" returned by getreginfo().
+Solution: Use VAR_BOOL instead of VAR_SPECIAL. (closes #11598)
+
+Patch 9.0.0937
+Problem: Forked repositories send out useless email.
+Solution: When Coverity fails to run just ignore it. (Shane-XB-Qian,
+ closes #11604)
+
+Patch 9.0.0938
+Problem: MS-Windows: debug executable not found when running test.
+Solution: Look for vimd.exe. (Christopher Plewright, closes #11602)
+
+Patch 9.0.0939
+Problem: Still using simplified mappings when using the kitty keyboard
+ protocol.
+Solution: Use the kitty_protocol_state value to decide whether to use
+ simplified mappings. Improve how seenModifyOtherKeys is set and
+ reset.
+
+Patch 9.0.0940
+Problem: Crash when typing a letter in a terminal window. (Shane-XB-Qian)
+Solution: Use the "vterm" variable instead of getting the terminal pointer
+ from the current buffer. (closes #11608)
+
+Patch 9.0.0941
+Problem: CI failures in sound dummy.
+Solution: Temporarily disable building sound dummy. (closes #11610)
+
+Patch 9.0.0942
+Problem: Workflow Description Language files are not recognized.
+Solution: Add a pattern for the "wdl" filetype. (Matt Dunford,
+ closes #11611)
+
+Patch 9.0.0943
+Problem: Pretending to go out of Insert mode when Esc is received has side
+ effects.
+Solution: When the kitty keyboard protocol is enabled expect Esc to always
+ be the start of an escape sequence.
+
+Patch 9.0.0944
+Problem: 'cursorline' causes virtual text highlight to continue.
+Solution: Save and restore line_attr. (closes #11588)
+
+Patch 9.0.0945
+Problem: Failures in the cursorline test.
+Solution: Reset extra_attr only after a text property.
+
+Patch 9.0.0946
+Problem: CI: Error in Coverity flow is not reported.
+Solution: Use another way to avoid errors in a forked repository. (Ken
+ Takata, closes #11609)
+
+Patch 9.0.0947
+Problem: Invalid memory access in substitute with function that goes to
+ another file.
+Solution: Check for text locked in CTRL-W gf.
+
+Patch 9.0.0948
+Problem: 'ttyfast' is set for arbitrary terminals.
+Solution: Always set 'ttyfast'. (closes #11549)
+
+Patch 9.0.0949
+Problem: Crash when unletting a variable while listing variables.
+Solution: Disallow changing a hashtable while going over the entries.
+ (closes #11435)
+
+Patch 9.0.0950
+Problem: The pattern "\_s\zs" matches at EOL.
+Solution: Make the pattern "\_s\zs" match at the start of the next line.
+ (closes #11617)
+
+Patch 9.0.0951
+Problem: Trying every character position for a match is inefficient.
+Solution: Use the start position of the match ignoring "\zs".
+
+Patch 9.0.0952
+Problem: Eclipse preference files are not recognized.
+Solution: Add a pattern to use "jproperties" for Eclipse preference files.
+ (closes #11618)
+
+Patch 9.0.0953
+Problem: Part of making search more efficient is missing.
+Solution: Add the change in searchit().
+
+Patch 9.0.0954
+Problem: Cannot detect whether modifyOtherKeys is enabled.
+Solution: Use XTQMODKEYS introduced by xterm version 377 to request the
+ modifyOtherKeys level. Update the keycode check results.
+
+Patch 9.0.0955
+Problem: Libvterm does not support the XTQMODKEYS request.
+Solution: Implement the XTQMODKEYS request and response. Update the keycode
+ check results.
+
+Patch 9.0.0956
+Problem: Terminal tests fail when using key with modifier.
+Solution: Use the modifyOtherKeys encoding when using RunVimInTerminal().
+
+Patch 9.0.0957
+Problem: Tests fail without the terminal feature.
+Solution: Move functions to another utility script.
+
+Patch 9.0.0958
+Problem: Messages test is flaky.
+Solution: Add a short delay.
+
+Patch 9.0.0959
+Problem: Error when using the "File Settings / Text Width" menu.
+Solution: Use str2nr(). (closes #11624)
+
+Patch 9.0.0960
+Problem: Error when using the "Tools / Spelling / Find More Languages"
+ menu.
+Solution: Remove "<SID>". Reset "g:menutrans_set_lang_to" when 'encoding'
+ changes. (closes #11625)
+
+Patch 9.0.0961
+Problem: Using deletebufline() may jump to another window.
+Solution: Do not use a window where the buffer was only in the past.
+ (closes #11594)
+
+Patch 9.0.0962
+Problem: Virtual text below cannot be placed below empty lines.
+Solution: Add one character. (James Alvarado, closes #11606, closes #11520)
+
+Patch 9.0.0963
+Problem: Function name does not match autocmd event name.
+Solution: Rename "optionsset" to "optionset". (closes #11630)
+
+Patch 9.0.0964
+Problem: Status line of other window not redrawn when dragging it when
+ 'splitkeep' is set to "screen".
+Solution: Set w_redr_status earlier. (Luuk van Baal, closes #11635,
+ closes #11632)
+
+Patch 9.0.0965
+Problem: Using one window for executing autocommands is insufficient.
+Solution: Use up to five windows for executing autocommands.
+
+Patch 9.0.0966
+Problem: Some compilers don't allow a declaration after a label.
+Solution: Move the declaration to the start of the block. (John Marriott)
+
+Patch 9.0.0967
+Problem: Leaking memory from autocmd windows.
+Solution: Free window when auc_win is not NULL.
+
+Patch 9.0.0968
+Problem: GUI mouse event test is a bit flaky.
+Solution: Mark the test case as flaky. Move test function failure checks to
+ a separate test function.
+
+Patch 9.0.0969
+Problem: Matchparen highlight is not updated when switching buffers.
+Solution: Listen to the BufLeave and the BufWinEnter autocmd events.
+ (closes #11626)
+
+Patch 9.0.0970
+Problem: Coverity warns for uninitialized variable.
+Solution: Initialize "ren_ret".
+
+Patch 9.0.0971
+Problem: Escape sequences not recognized without the termresponse feature.
+Solution: Recognize escape sequences to avoid display mess up.
+
+Patch 9.0.0972
+Problem: Build failure on some systems.
+Solution: Adjust #ifdefs related to the termresponse feature.
+
+Patch 9.0.0973
+Problem: Kitty keyboard protocol key not decoded when it has an unsupported
+ modifier, such as NumLock.
+Solution: Accept a key with any modifier. (closes #11638)
+
+Patch 9.0.0974
+Problem: Even when Esc is encoded a timeout is used.
+Solution: Use K_ESC when an encoded Esc is found.
+
+Patch 9.0.0975
+Problem: Virtual text below an empty line is misplaced when 'number' is
+ set.
+Solution: Adjust the computations. (closes #11629)
+
+Patch 9.0.0976
+Problem: Enabling the kitty keyboard protocol uses push/pop.
+Solution: Use the start/stop codes to avoid unpredictable behavior.
+
+Patch 9.0.0977
+Problem: It is not easy to see what client-server commands are doing.
+Solution: Add channel log messages if ch_log() is available. Move the
+ channel logging and make it available with the +eval feature.
+
+Patch 9.0.0978
+Problem: Build errors without the +channel feature. (John Marriott)
+Solution: Adjust #ifdefs.
+
+Patch 9.0.0979
+Problem: ch_log() text can be hard to find in the log file.
+Solution: Prepend "ch_log()" to the text.
+
+Patch 9.0.0980
+Problem: The keyboard state response may end up in a shell command.
+Solution: Only request the keyboard protocol state when the typeahead is
+ empty, no more commands are following and not exiting. Add the
+ t_RK termcap entry for this.
+
+Patch 9.0.0981
+Problem: Build error in tiny version.
+Solution: Add #ifdef.
+
+Patch 9.0.0982
+Problem: 'cursorline' not drawn before virtual text below.
+Solution: Add the 'cursorline' attribute to the empty space. (closes #11647)
+
+Patch 9.0.0983
+Problem: Stray characters displayed when starting the GUI.
+Solution: Add t_RK to the list of terminal options.
+
+Patch 9.0.0984
+Problem: GUI: remote_foreground() does not always work. (Ron Aaron)
+Solution: For GTK use gtk_window_set_keep_above(). (issue #11641)
+
+Patch 9.0.0985
+Problem: When using kitty keyboard protocol function keys may not work.
+ (Kovid Goyal)
+Solution: Recognize CSI ending in [ABCDEFHPQRS] also when the termcap
+ entries are not specified. (closes #11648)
+
+Patch 9.0.0986
+Problem: Build failure with tiny version.
+Solution: Add #ifdef.
+
+Patch 9.0.0987
+Problem: File missing from list of distributed files.
+Solution: Add logfile.pro to list of distributed files.
+
+Patch 9.0.0988
+Problem: Using feedkeys() does not show up in a channel log.
+Solution: Add ch_log() calls and clean up the code.
+
+Patch 9.0.0989
+Problem: Popupwin test is more flaky on MacOS.
+Solution: Use a longer wait time.
+
+Patch 9.0.0990
+Problem: Callback name argument is changed by setqflist().
+Solution: Use the expanded function name for the callback, do not store it
+ in the argument. (closes #11653)
+
+Patch 9.0.0991
+Problem: Crash when reading help index with various options set. (Marius
+ Gedminas)
+Solution: Do not set wlv.c_extra to NUL when wlv.p_extra is NULL.
+ (closes #11651)
+
+Patch 9.0.0992
+Problem: Vim9 script: get E1096 when comment follows return.
+Solution: Adjust condition for return without expression. (closes #11654)
+
+Patch 9.0.0993
+Problem: Display errors when adding or removing text property type.
+Solution: Perform a full redraw. Only use text properties for which the
+ type is defined. (closes #11655)
+
+Patch 9.0.0994
+Problem: Tests for empty prop type name fail.
+Solution: Correct the error number.
+
+Patch 9.0.0995
+Problem: Padding before virtual text below is highlighted when 'number' and
+ 'nowrap' are set.
+Solution: Save and restore n_attr_skip. (closes #11643)
+
+Patch 9.0.0996
+Problem: If 'keyprotocol' is empty "xterm" still uses modifyOtherKeys.
+Solution: Remove t_TI, t_RK and t_TE from the "xterm" builtin termcap and
+ let the default value of 'keyprotocol' add those.
+
+Patch 9.0.0997
+Problem: Coverity warns for dead code.
+Solution: Don't use ASCII_ISUPPER() for a negative value.
+
+Patch 9.0.0998
+Problem: "gk" may reset skipcol when not needed.
+Solution: Only reset skipcol if the cursor column is less.
+
+Patch 9.0.0999
+Problem: Memory may leak.
+Solution: Free the sound callback function name if it was allocated.
+
+Patch 9.0.1000
+Problem: With 'smoothscroll' skipcol may be reset unnecessarily.
+Solution: Check the line does actually fit in the window.
+
+Patch 9.0.1001
+Problem: Classes are not documented or implemented yet.
+Solution: Make the first steps at documenting Vim9 objects, classes and
+ interfaces. Make initial choices for the syntax. Add a skeleton
+ implementation. Add "public" and "this" in the command table.
+
+Patch 9.0.1002
+Problem: Command list test fails.
+Solution: Add commands added to the list.
+
+Patch 9.0.1003
+Problem: Tiny build fails.
+Solution: Remove #ifdef from error message.
+
+Patch 9.0.1004
+Problem: Suspend test sometimes fails on MacOS.
+Solution: Wait a short while for terminal responses.
+
+Patch 9.0.1005
+Problem: A failed test may leave a swap file behind.
+Solution: Delete the swap file to avoid another test to fail. Use another
+ file name.
+
+Patch 9.0.1006
+Problem: Suspend test still sometimes fails on MacOS.
+Solution: Wait a little while for terminal responses.
+
+Patch 9.0.1007
+Problem: There is no way to get a list of swap file names.
+Solution: Add the swapfilelist() function. Use it in the test script to
+ clean up. Remove deleting individual swap files.
+
+Patch 9.0.1008
+Problem: Test for swapfilelist() fails on MS-Windows.
+Solution: Only check the tail of the path. Mark a test as flaky.
+
+Patch 9.0.1009
+Problem: Test for catch after interrupt is flaky on MS-Windows.
+Solution: Mark the test as flaky.
+
+Patch 9.0.1010
+Problem: Stray warnings for existing swap files.
+Solution: Wipe out the buffer until it has no name and no swap file.
+
+Patch 9.0.1011
+Problem: ml_get error when using screenpos().
+Solution: Give an error for the line number. (closes #11661)
+
+Patch 9.0.1012
+Problem: Tests may get stuck in buffer with swap file.
+Solution: Bail out when bwipe! doesn't get another buffer.
+
+Patch 9.0.1013
+Problem: Suspend test often fails on Mac OS.
+Solution: Make t_RP empty.
+
+Patch 9.0.1014
+Problem: Zir files are not recognized.
+Solution: Add a pattern for Zir files. (closes #11664)
+
+Patch 9.0.1015
+Problem: Without /dev/urandom srand() seed is too predictable.
+Solution: Use micro seconds and XOR with process ID. (Yasuhiro Matsumoto,
+ closes #11656)
+
+Patch 9.0.1016
+Problem: screenpos() does not count filler lines for diff mode.
+Solution: Add filler lines. (closes 11658)
+
+Patch 9.0.1017
+Problem: Test for srand() fails on MS-Windows.
+Solution: Do not expect the same result a second time.
+
+Patch 9.0.1018
+Problem: Suspend test still fails on Mac OS.
+Solution: Make 'keyprotocol' empty.
+
+Patch 9.0.1019
+Problem: 'smoothscroll' and virtual text above don't work together.
+ (Yee Cheng Chin)
+Solution: Skip virtual text above when w_skipcol is non-zero.
+ (closes #11665)
+
+Patch 9.0.1020
+Problem: Tests call GetSwapFileList() before it is defined.
+Solution: Move the call to after defining the function. (Christopher
+ Plewright)
+
+Patch 9.0.1021
+Problem: Test trips over g:name.
+Solution: Delete g:name after using it.
+
+Patch 9.0.1022
+Problem: Suspend test fails on Mac OS when suspending Vim.
+Solution: Make 'keyprotocol' empty.
+
+Patch 9.0.1023
+Problem: MS-Windows: dynamic loading of libsodium doesn't work.
+Solution: Add "randombytes_random". (Ken Takata, closes #11667)
+
+Patch 9.0.1024
+Problem: CI doesn't use the latest FreeBSD version.
+Solution: Go from 12.3 to 12.4. (closes #11423)
+
+Patch 9.0.1025
+Problem: WinScrolled is not triggered when filler lines change.
+Solution: Add "topfill" to the values that WinScrolled triggers on.
+ (closes #11668)
+
+Patch 9.0.1026
+Problem: type of w_last_topfill is wrong.
+Solution: Use "int" instead of "linenr_T". (closes #11670)
+
+Patch 9.0.1027
+Problem: LGTM is soon shutting down.
+Solution: Remove LGTM from CI. (closes #11671)
+
+Patch 9.0.1028
+Problem: Mouse shape test is flaky, especially on Mac OS.
+Solution: Instead of starting all timers at the same time, start the next
+ one in the callback of the previous one. (Yee Cheng Chin,
+ closes #11673) Also use "bwipe!" instead of "close!" to avoid
+ swap files remaining.
+
+Patch 9.0.1029
+Problem: Autoload directory missing from distribution.
+Solution: Add the autoload/zig directory to the list of distributed files.
+
+Patch 9.0.1030
+Problem: Using freed memory with the cmdline popup menu.
+Solution: Clear the popup menu when clearing the matches. (closes #11677)
+
+Patch 9.0.1031
+Problem: Vim9 class is not implemented yet.
+Solution: Add very basic class support.
+
+Patch 9.0.1032
+Problem: Test fails when terminal feature is missing.
+Solution: Use CheckRunVimInTerminal.
+
+Patch 9.0.1033
+Problem: Tiny build fails because of conflicting typedef.
+Solution: Remove one typedef.
+
+Patch 9.0.1034
+Problem: Reporting swap file when windows are split.
+Solution: Close extra windows after running a test.
+
+Patch 9.0.1035
+Problem: Object members are not being marked as used, garbage collection
+ may free them.
+Solution: Mark object members as used. Fix reference counting.
+
+Patch 9.0.1036
+Problem: Undo misbehaves when writing from an insert mode mapping.
+Solution: Sync undo when writing. (closes #11674)
+
+Patch 9.0.1037
+Problem: lalloc(0) error for a class without members.
+Solution: Don't allocate room for members if there aren't any.
+ Don't create the class if there was an error.
+
+Patch 9.0.1038
+Problem: Function name does not match what it is used for.
+Solution: Include the modifier in the name. (closes #11679)
+
+Patch 9.0.1039
+Problem: Using a <Cmd> mapping CmdlineChanged may be triggered twice.
+Solution: Count the number of times CmdlineChanged is triggered and avoid
+ doing it twice. (closes #116820
+
+Patch 9.0.1040
+Problem: Test for <Cmd> mapping with CmdlineChanged fails.
+Solution: Put back the check for the cmdline length not changing.
+
+Patch 9.0.1041
+Problem: Cannot define a method in a class.
+Solution: Implement defining an object method. Make calling an object
+ method work.
+
+Patch 9.0.1042
+Problem: ASAN gives false alarm about array access.
+Solution: Use an intermediate pointer.
+
+Patch 9.0.1043
+Problem: Macro has confusing name and is duplicated.
+Solution: Use one macro with an understandable name. (closes #11686)
+
+Patch 9.0.1044
+Problem: Setting window height using Python may cause errors.
+Solution: When setting "curwin" also set "curbuf". (closes #11687)
+
+Patch 9.0.1045
+Problem: In a class object members cannot be initialized.
+Solution: Support initializing object members. Make "disassemble" work on
+ an object method.
+
+Patch 9.0.1046
+Problem: Class method disassemble test fails on MS-Windows.
+Solution: Do not match with a specific size.
+
+Patch 9.0.1047
+Problem: Matchparen is slow.
+Solution: Actually use the position where the match started, not the
+ position where the search started. (closes #11644)
+
+Patch 9.0.1048
+Problem: With "screenline" in 'culopt' cursorline highlight is wrong.
+Solution: Apply the priority logic also when "screenline is in 'culopt'.
+ (closes #11696)
+
+Patch 9.0.1049
+Problem: Crash when opening a very small terminal window.
+Solution: Instead of crashing fix the cursor position. (closes #11697)
+
+Patch 9.0.1050
+Problem: Using freed memory when assigning to variable twice.
+Solution: Make copy of the list type. (closes #11691)
+
+Patch 9.0.1051
+Problem: After a failed CTRL-W ] next command splits window.
+Solution: Reset postponed_split. (Rob Pilling, closes #11698)
+
+Patch 9.0.1052
+Problem: Using freed memory on exit when EXITFREE is defined.
+Solution: Make a deep copy of the type. Make sure TTFLAG_STATIC is not set
+ in the copy.
+
+Patch 9.0.1053
+Problem: Default constructor arguments are not optional.
+Solution: Use "= v:none" to make constructor arguments optional.
+
+Patch 9.0.1054
+Problem: Object member can't get type from initializer.
+Solution: If there is no type specified try to use the type of the
+ initializer. Check for a valid type.
+
+Patch 9.0.1055
+Problem: Coverity warns for using uninitialized memory.
+Solution: Clear the "lhs" field earlier.
+
+Patch 9.0.1056
+Problem: Leaking memory when disassembling an object method.
+Solution: Free the typval of the class.
+
+Patch 9.0.1057
+Problem: Conflict between supercollider and scala filetype detection.
+Solution: Do not check for "Class : Method", it can appear in both
+ filetypes. (Chris Kipp, closes #11699)
+
+Patch 9.0.1058
+Problem: String value of class and object do not have useful information.
+Solution: Add the class name and for the object the member values.
+
+Patch 9.0.1059
+Problem: Build failure with some compilers that can't handle a
+ declaration directly after a "case" statement.
+Solution: Add a block to put the declarations in.
+
+Patch 9.0.1060
+problem: Private and public object members are not implemented yet.
+Solution: Implement private and public object members.
+
+Patch 9.0.1061
+Problem: Cannot display 'showcmd' somewhere else.
+Solution: Add the 'showcmdloc' option. (Luuk van Baal, closes #11684)
+
+Patch 9.0.1062
+Problem: Some test function names do not match what they are doing.
+Solution: Leave out user data for the test that is called "NoUserData".
+ (closes #11703)
+
+Patch 9.0.1063
+Problem: When using Kitty a shell command may mess up the key protocol
+ state.
+Solution: Output t_te before t_TE. If t_te switches between the main and
+ the alternate screen then deactivating the key protocol by t_TE
+ should happen after switching screen. (issue #11705)
+
+Patch 9.0.1064
+Problem: Code for making 'shortmess' temporarily empty is repeated.
+Solution: Add functions for making 'shortmess' empty and restoring it.
+ (Christian Brabandt, closes #11709)
+
+Patch 9.0.1065
+Problem: A shell command switching screens may still have a problem with
+ the kitty keyboard protocol.
+Solution: Disable the kitty keyboard protocol both in the current and the
+ alternate screen, if there are indications it might be needed.
+ (issue #11705) Also fix naming.
+
+Patch 9.0.1066
+Problem: Test function name is wrong.
+Solution: Rename to what is actually being tested. (closes #11712)
+
+Patch 9.0.1067
+Problem: In diff mode virtual text is highlighted incorrectly. (Rick Howe)
+Solution: Do not use diff attributes for virtual text. (closes #11714)
+
+Patch 9.0.1068
+Problem: No information about whether requesting term codes has an effect.
+Solution: Add ch_log() calls to report the effect of term code responses.
+ Avoid deleting an entry and then adding back the same one.
+
+Patch 9.0.1069
+Problem: Diff mode highlight fails for special characters.
+Solution: Adjust condition for setting "diff_hlf".
+
+Patch 9.0.1070
+Problem: Reading beyond array size.
+Solution: Only use name[0] and name[1], do not use "name" as a string.
+
+Patch 9.0.1071
+Problem: Codecov action version is too specific.
+Solution: Only use "v3" to automatically use the latest stable version.
+ (closes #11720)
+
+Patch 9.0.1072
+Problem: screenpos() column result in fold may be too small.
+Solution: Add space of 'number', sign column, etc. (closes #11715)
+
+Patch 9.0.1073
+Problem: Using "xterm-kitty" for 'term' causes problems.
+Solution: Remove the "xterm-" part when 'term' is set from $TERM. Detect a
+ few kitty-specific properties based on the version response
+ instead of the terminal name.
+
+Patch 9.0.1074
+Problem: Class members are not supported yet.
+Solution: Add initial support for class members.
+
+Patch 9.0.1075
+Problem: build fails if the compiler doesn't allow for a declaration right
+ after "case".
+Solution: Add a block.
+
+Patch 9.0.1076
+Problem: ASAN complains about NULL argument.
+Solution: Skip memmove() when there is nothing to move.
+
+Patch 9.0.1077
+Problem: Can add text property with negative ID before virtual text
+ property.
+Solution: Remember that a text property with a negative ID was used and give
+ an appropriate error message. (closes #11725)
+ Fix index computation.
+
+Patch 9.0.1078
+Problem: With the +vartabs feature indent folding may use wrong 'tabstop'.
+Solution: Use the "buf" argument instead of "curbuf".
+
+Patch 9.0.1079
+Problem: Leaking memory when defining a user command fails.
+Solution: Free "compl_arg" when needed. (closes #11726)
+
+Patch 9.0.1080
+Problem: The "kitty" terminfo entry is not widespread, resulting in the
+ kitty terminal not working properly.
+Solution: Go back to using "xterm-kitty" and avoid the problems it causes in
+ another way.
+
+Patch 9.0.1081
+Problem: Using "->" with split lines does not always work.
+Solution: Avoid trying to get another line. (closes #11723)
+
+Patch 9.0.1082
+Problem: Some jsonc files are not recognized.
+Solution: Add patterns for jsonc and move some from json to jsonc.
+ (closes #11711)
+
+Patch 9.0.1083
+Problem: Empty and comment lines in a class cause an error.
+Solution: Skip empty and comment lines. (closes #11734)
+
+Patch 9.0.1084
+Problem: Code handling low level MS-Windows events cannot be tested.
+Solution: Add test_mswin_event() and tests using it. (Christopher Plewright,
+ closes #11622)
+
+Patch 9.0.1085
+Problem: Compiler warns for uninitialized variable.
+Solution: Initialize the variable. Remove unused function. (John Marriott)
+
+Patch 9.0.1086
+Problem: Display wrong in Windows terminal after exiting Vim.
+Solution: Apply screen restore fix for Windows 11 also to Windows 10 builds.
+ (Christopher Plewright, closes #11713, closes #11706)
+
+Patch 9.0.1087
+Problem: Autocommand test sometimes fails.
+Solution: Add a short delay. (James McCoy, closes #11737)
+
+Patch 9.0.1088
+Problem: Clang warns for unused variable.
+Solution: Adjust #ifdef. (John Marriott)
+
+Patch 9.0.1089
+Problem: unnecessary assignment
+Solution: Remove the assignment. (Luuk van Baal, closes #1136)
+
+Patch 9.0.1090
+Problem: FHIR Shorthand files are not recognized.
+Solution: Add a pattern to detect FSH files. (Matthew Gramigna,
+ closes #11738)
+
+Patch 9.0.1091
+Problem: Assignment to non-existing member causes a crash. (Yegappan
+ Lakshmanan)
+Solution: Give an error message and bail out when a member cannot be found.
+
+Patch 9.0.1092
+Problem: Search error message doesn't show used pattern.
+Solution: Pass the actually used pattern to where the error message is
+ given. (Rob Pilling, closes #11742)
+
+Patch 9.0.1093
+Problem: Using freed memory of object member. (Yegappan Lakshmanan)
+Solution: Make a copy of the object member when getting it.
+
+Patch 9.0.1094
+Problem: Compiler warning when HAS_MESSAGE_WINDOW is not defined.
+Solution: Add UNUSED.
+
+Patch 9.0.1095
+Problem: Using freed memory when declaration fails. (Yegappan Lakshmanan)
+Solution: After unreferencing an object set the reference to NULL.
+
+Patch 9.0.1096
+Problem: Reallocating hashtab when the size didn't change.
+Solution: Bail out when the hashtab is already the desired size.
+
+Patch 9.0.1097
+Problem: Tests are failing.
+Solution: Do clean up a hashtab when at the initial size.
+
+Patch 9.0.1098
+Problem: Code uses too much indent.
+Solution: Use an early return. (Yegappan Lakshmanan, closes #11747)
+
+Patch 9.0.1099
+Problem: Trying to resize a hashtab may cause a problem.
+Solution: Do not try to resize a hashtab before adding an item.
+
+Patch 9.0.1100
+Problem: A hashtab with many removed items is not cleaned up.
+Solution: Re-hash a hashtab even when the size didn't change if too many
+ items were removed.
+
+Patch 9.0.1101
+Problem: Unused global variable.
+Solution: Remove the variable. (closes #11752)
+
+Patch 9.0.1102
+Problem: Complicated use of #ifdef.
+Solution: Simplify #ifdef use. (Ken Takata, closes #11745)
+
+Patch 9.0.1103
+Problem: jq files are not recognized.
+Solution: Add detection of Jq files. (David McDonald, closes #11743)
+
+Patch 9.0.1104
+Problem: Invalid memory access when checking function argument types.
+Solution: Do not check beyond the number of arguments. (closes #11755)
+
+Patch 9.0.1105
+Problem: Code is indented too much.
+Solution: Use an early return. (Yegappan Lakshmanan, closes #11756)
+
+Patch 9.0.1106
+Problem: Not all postfix files are recognized.
+Solution: Recognize main.cf.proto files. (closes #11732)
+
+Patch 9.0.1107
+Problem: Float constant not recognized as float.
+Solution: Check the vartype instead of comparing with t_float.
+ (closes #11754)
+
+Patch 9.0.1108
+Problem: Type error when using "any" type and adding a number to a float.
+Solution: Accept both a number and a float. (closes #11753)
+
+Patch 9.0.1109
+Problem: Leaking allocated type.
+Solution: Reset the "static" flag in the allocated type copy.
+
+Patch 9.0.1110
+Problem: Build fails on Mac OS X 10.4/10.5 .
+Solution: Check if the dispatch/dispatch.h header exists. (Evan Miller,
+ closes #11746)
+
+Patch 9.0.1111
+Problem: Termcap entries for RGB colors are not set automatically.
+Solution: Always set the termcap entries when +termguicolors is enabled.
+
+Patch 9.0.1112
+Problem: test_mswin_event() can hang.
+Solution: Add the "execute" argument to process events right away.
+ (Christopher Plewright, closes #11760)
+
+Patch 9.0.1113
+Problem: Users cannot easily try out a PR.
+Solution: Add an "artifacts" section to the AppVeyor CI config. (Christian
+ Brabandt, closes #11762)
+
+Patch 9.0.1114
+Problem: CI does not use the latest Python version.
+Solution: Switch from Python 3.10 to 3.11. (closes #11761)
+
+Patch 9.0.1115
+Problem: Code is indented more than needed.
+Solution: Use an early return to reduce indenting. (Yegappan Lakshmanan,
+ closes #11758)
+
+Patch 9.0.1116
+Problem: Compiler may complain about an unused function.
+Solution: Add #ifdef. (John Marriott)
+
+Patch 9.0.1117
+Problem: Terminfo entries for bracketed paste are not used.
+Solution: Use the newly added terminfo entries for bracketed paste.
+ Correct mixup of output strings and key codes.
+
+Patch 9.0.1118
+Problem: Sporadic test failures when using a terminal window.
+Solution: Adjust waiting times. (James McCoy, closes #11763)
+
+Patch 9.0.1119
+Problem: Type of arguments not checked when calling a partial.
+Solution: Give an error for a wrong argument type. (closes #11753)
+
+Patch 9.0.1120
+Problem: Tex filetype detection not sufficiently tested.
+Solution: Add more test cases for "tex" detection. (Jonas Strittmatter,
+ closes #11765)
+
+Patch 9.0.1121
+Problem: Cursor positioning and display problems with 'smoothscroll' and
+ using "zt", "zb" or "zz".
+Solution: Adjust computations and conditions. (Yee Cheng Chin,
+ closes #11764)
+
+Patch 9.0.1122
+Problem: Class member access is not fully tested yet.
+Solution: Add more tests.
+
+Patch 9.0.1123
+Problem: Class function not implemented yet.
+Solution: Implement defining and calling a class function.
+
+Patch 9.0.1124
+Problem: Virtual text at a column position is truncated at the window edge.
+ (Yegappan Lakshmanan)
+Solution: Do not truncated virtual text that is placed at a column.
+
+Patch 9.0.1125
+Problem: Memory leak when using class functions.
+Solution: Clear and free the array with class functions.
+
+Patch 9.0.1126
+Problem: Bracketed paste can be enabled when pasted text is not recognized.
+Solution: Output t_BE only when t_PS and t_PE are set.
+
+Patch 9.0.1127
+Problem: No error if function argument shadows class member.
+Solution: Give an error for shadowing a class member.
+
+Patch 9.0.1128
+Problem: Build failure.
+Solution: Add type cast. Add missing error messages.
+
+Patch 9.0.1129
+Problem: Sporadic Test_range() failure.
+Solution: Clear typeahead. Move to a separate function. (issue #22771)
+
+Patch 9.0.1130
+Problem: Unexpected output when autoloading a script for an interactive
+ operation.
+Solution: Reset "KeyTyped" while loading a script and when handling a nested
+ function. (closes #11773)
+
+Patch 9.0.1131
+Problem: Build failure without the +eval feature.
+Solution: Move code inside #ifdef.
+
+Patch 9.0.1132
+Problem: Code is indented more than needed.
+Solution: Use an early return to reduce indentation. (Yegappan Lakshmanan,
+ closes #11769)
+
+Patch 9.0.1133
+Problem: Error message names do not match the items.
+Solution: Add "_str" when the text contains "%s".
+
+Patch 9.0.1134
+Problem: Comparing objects uses identity instead of equality.
+Solution: Compare the object values.
+
+Patch 9.0.1135
+Problem: Missing function argument.
+Solution: Add ignore case flag.
+
+Patch 9.0.1136
+Problem: Memory leak when getting class member type from expr.
+Solution: Clear the expression result.
+
+Patch 9.0.1137
+Problem: Some conditions are always false.
+Solution: Remove the useless conditions. (closes #11776)
+
+Patch 9.0.1138
+Problem: Crash when expecting varargs but it is something else.
+Solution: Only use the member when the type is a list. (closes #11774)
+
+Patch 9.0.1139
+Problem: Cannot create a new object in a compiled function.
+Solution: Compile the instructions to create a new object.
+
+Patch 9.0.1140
+Problem: Cannot call an object method in a compiled function.
+Solution: Compile the instructions to invoke an object method.
+
+Patch 9.0.1141
+Problem: 'cursorcolumn' and 'colorcolumn' wrong after concealing and
+ wrapping line.
+Solution: Reset "wlv.vcol_off" after each screen line. (Alexey Radkov,
+ closes #11777)
+
+Patch 9.0.1142
+Problem: Crash and/or memory leak when redefining function after error.
+Solution: Clear pointer after making a copy. Clear arrays on failure.
+ (closes #11774)
+
+Patch 9.0.1143
+Problem: Invalid memory access with bad 'statusline' value.
+Solution: Avoid going over the NUL at the end.
+
+Patch 9.0.1144
+Problem: Reading beyond text.
+Solution: Add strlen_maxlen() and use it.
+
+Patch 9.0.1145
+Problem: Invalid memory access with recursive substitute expression.
+Solution: Check the return value of vim_regsub().
+
+Patch 9.0.1146
+Problem: MS-Windows: various special keys and modifiers are not mappable.
+Solution: Adjust the handling of keys with modifiers. (Christian Plewright,
+ closes #11768)
+
+Patch 9.0.1147
+Problem: Cannot access a class member in a compiled function.
+Solution: Implement looking up a class member.
+
+Patch 9.0.1148
+Problem: Cmdline test fails in the GUI.
+Solution: Skip the test when running in the GUI.
+
+Patch 9.0.1149
+Problem: Class members may be garbage collected.
+Solution: Mark class members as being in use.
+
+Patch 9.0.1150
+Problem: :interface is not implemented yet.
+Solution: Implement the basics of :interface.
+
+Patch 9.0.1151
+Problem: Build failure.
+Solution: Add missing part of :interface change.
+
+Patch 9.0.1152
+Problem: Class "implements" argument not implemented.
+Solution: Implement "implements" argument. Add basic checks for when a
+ class implements an interface.
+
+Patch 9.0.1153
+Problem: Build error with some compilers.
+Solution: Clear pointer the right way.
+
+Patch 9.0.1154
+Problem: Coverity warns for dead code.
+Solution: Remove condition that is always true.
+
+Patch 9.0.1155
+Problem: Cannot use a class as a type.
+Solution: Accept a class and interface name as a type.
+
+Patch 9.0.1156
+Problem: Tests fail because of a different error message.
+Solution: Don't give an error if a type name can't be found.
+
+Patch 9.0.1157
+Problem: "implements" only handles one interface name.
+Solution: Handle a comma separated list of names. Check for duplicate
+ names.
+
+Patch 9.0.1158
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11787)
+
+Patch 9.0.1159
+Problem: Extends argument for class not implemented yet.
+Solution: Basic implementation of "extends".
+
+Patch 9.0.1160
+Problem: ASAN error for ufunc_T allocated with wrong size.
+Solution: Make sure the size can always fit the struct.
+
+Patch 9.0.1161
+Problem: Coverity warns for using strcpy().
+Solution: Call a function to set the function name.
+
+Patch 9.0.1162
+Problem: Configure does not handle all FORTIFY_SOURCE variants.
+Solution: Also handle Fedora's default FORTIFY_SOURCE flags. (Zdenek Dohnal,
+ closes #11794)
+
+Patch 9.0.1163
+Problem: Compiler warning for implicit size_t/int conversion.
+Solution: Add a type cast. (Mike Williams, closes #11795)
+
+Patch 9.0.1164
+Problem: Evaluating string expression advances function line.
+Solution: Disable function lines while parsing a string expression.
+ (Hirohito Higashi, closes #11796)
+
+Patch 9.0.1165
+Problem: Tests using IPv6 sometimes fail.
+Solution: Use getaddrinfo() and use try/catch. (James McCoy,
+ closes #11783)
+
+Patch 9.0.1166
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11792)
+
+Patch 9.0.1167
+Problem: EditorConfig files do not have their own filetype.
+Solution: Add the "editorconfig" filetype. (Gregory Anders, closes #11779)
+
+Patch 9.0.1168
+Problem: Code to enable/disable mouse is not from terminfo/termcap.
+Solution: Request the "XM" entry and use it to set 'ttymouse' if possible.
+
+Patch 9.0.1169
+Problem: Some key+modifier tests fail on some AppVeyor images.
+Solution: Adjust the tests for key movements and fix the revealed bugs.
+ (Christopher Plewright, closes #11798)
+
+Patch 9.0.1170
+Problem: LGTM badge no longer works.
+Solution: Remove the LGTM badge. (closes #11799)
+
+Patch 9.0.1171
+Problem: Screen is not redrawn after using setcellwidths().
+Solution: Redraw the screen when the cell widths have changed. (Yasuhiro
+ Matsumoto, closes #11800)
+
+Patch 9.0.1172
+Problem: When 'selection' is "exclusive" then "1v" is one char short.
+Solution: Add one character when 'selection' is "exclusive". (closes #11791)
+
+Patch 9.0.1173
+Problem: Compiler warning for unused variable on non-Unix systems.
+Solution: Move #ifdef. (John Marriott)
+
+Patch 9.0.1174
+Problem: Smali files are not recognized.
+Solution: Add a pattern for Smali files. (Amaan Qureshi, closes #11801)
+
+Patch 9.0.1175
+Problem: The set_ref_in_item() function is too long.
+Solution: Use a separate function for more complicated types. (Yegappan
+ Lakshmanan, closes #11802)
+
+Patch 9.0.1176
+Problem: smithy files are not recognized.
+Solution: Add a pattern for Smithy files. (Chris Kipp, closes #11804)
+
+Patch 9.0.1177
+Problem: AppVeyor uses some older tools.
+Solution: Switch to Visual Studio 2022 and Python 3.11. (Christopher
+ Plewright, closes #11793)
+
+Patch 9.0.1178
+Problem: A child class cannot override functions from a base class.
+Solution: Allow overriding and implement "super".
+
+Patch 9.0.1179
+Problem: Not all errors around inheritance are tested.
+Solution: Add more tests. Fix uncovered problems.
+
+Patch 9.0.1180
+Problem: Compiler warnings without the +job feature.
+Solution: Adjust #ifdefs. (John Marriott)
+
+Patch 9.0.1181
+Problem: Class inheritance and typing insufficiently tested.
+Solution: Add more tests. Implement missing behavior.
+
+Patch 9.0.1182
+Problem: go checksum files are not recognized.
+Solution: Add the name of go checksum files. (Amaan Qureshi, closes #11803)
+
+Patch 9.0.1183
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11805)
+
+Patch 9.0.1184
+Problem: Interface of an object is not recognized when checking type.
+Solution: Use the interface implemented by an object.
+
+Patch 9.0.1185
+Problem: Using class from imported script not tested.
+Solution: Add tests. Implement what is missing.
+
+Patch 9.0.1186
+Problem: Imported class does not work when used twice in a line.
+Solution: Fix the type parsing.
+
+Patch 9.0.1187
+Problem: Test for using imported class fails.
+Solution: Skip over rest of type.
+
+Patch 9.0.1188
+Problem: Return value of type() for class and object unclear.
+Solution: Add v:t_object and v:t_class.
+
+Patch 9.0.1189
+Problem: Invalid memory access with folding and using "L".
+Solution: Prevent the cursor from moving to line zero.
+
+Patch 9.0.1190
+Problem: AppVeyor runs much slower with MSVC 2022.
+Solution: Go back to MSVC 2015. (Christopher Plewright, closes #11810)
+
+Patch 9.0.1191
+Problem: Some Bazel files are not recognized.
+Solution: Add an extra Bazel pattern. (Keith Smily, closes #11807)
+
+Patch 9.0.1192
+Problem: No error when class function argument shadows a member.
+Solution: Check for shadowing.
+
+Patch 9.0.1193
+Problem: Cannot map <Esc> when using the Kitty key protocol.
+Solution: Add a non-simplified mapping for K_ESC. (closes #11811)
+
+Patch 9.0.1194
+Problem: Compiler warning for comparing pointer with int.
+Solution: Change NULL to zero.
+
+Patch 9.0.1195
+Problem: Restoring KeyTyped when building statusline not tested.
+Solution: Add a test. Clean up and fix other tests. (closes #11815)
+
+Patch 9.0.1196
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11813)
+
+Patch 9.0.1197
+Problem: Dump file missing from patch.
+Solution: Add missing dump file.
+
+Patch 9.0.1198
+Problem: Abstract class not supported yet.
+Solution: Implement abstract class and add tests.
+
+Patch 9.0.1199
+Problem: Crash when using kitty and using a mapping with <Esc>.
+Solution: Do not try setting did_simplify when it is NULL. (closes #11817)
+
+Patch 9.0.1200
+Problem: AppVeyor builds with an old Python version.
+Solution: Switch from Python 3.8 to 3.11. (Christopher Plewright,
+ closes #11814)
+
+Patch 9.0.1201
+Problem: Assignment with operator doesn't work in object method.
+Solution: Handle loading the object member. (closes #11820) Add a few more
+ tests.
+
+Patch 9.0.1202
+Problem: Crash when iterating over list of objects.
+Solution: Do not make a copy of tt_member for object or class.
+ (closes #11823)
+
+Patch 9.0.1203
+Problem: Return type of values() is always list<any>.
+Solution: Use the member type if possible. (issue #11822)
+
+Patch 9.0.1204
+Problem: Expression compiled the wrong way after using an object.
+Solution: Generate constants before getting the type.
+
+Patch 9.0.1205
+Problem: Crash when handling class that extends another class with more
+ than one object members.
+Solution: Correct pointer computations. (closes #11824)
+
+Patch 9.0.1206
+Problem: Testing with Python on AppVeyor does not work properly.
+Solution: Fix typo. Move most lines to the .bat file. (Christopher
+ Plewright, closes #11828)
+
+Patch 9.0.1207
+Problem: Error when object type is expected but getting "any".
+Solution: When actual type is "any" use a runtime type check.
+ (closes #11826)
+
+Patch 9.0.1208
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11819)
+
+Patch 9.0.1209
+Problem: Getting interface member does not always work.
+Solution: Convert the index on the interface to the index on the object.
+ (closes #11825)
+
+Patch 9.0.1210
+Problem: Compiler complains about declaration after label.
+Solution: Move declaration to beginning of block (John Marriott)
+
+Patch 9.0.1211
+Problem: Storing value in interface member does not always work.
+Solution: Convert the index on the interface to the index on the object.
+
+Patch 9.0.1212
+Problem: Cannot read back what setcellwidths() has done.
+Solution: Add getcellwidths(). (Kota Kato, closes #11837)
+
+Patch 9.0.1213
+Problem: Adding a line below the last one does not expand fold.
+Solution: Do not skip mark_adjust() when adding lines below the last one.
+ (Brandon Simmons, closes #11832, closes #10698)
+
+Patch 9.0.1214
+Problem: File left behind after running tests.
+Solution: Delete the file. (Dominique Pellé, closes #11839)
+
+Patch 9.0.1215
+Problem: Using isalpha() adds dependency on current locale.
+Solution: Do not use isalpha() for recognizing a URL or the end of an Ex
+ command. (closes #11835)
+
+Patch 9.0.1216
+Problem: Coverity warns for ignoring return value.
+Solution: Break out of loop if function fails.
+
+Patch 9.0.1217
+Problem: Using an object member in a closure doesn't work.
+Solution: Initialize lv_loop_depth. (closes #11840)
+
+Patch 9.0.1218
+Problem: Completion includes functions that don't work.
+Solution: Skip functions that are not implemented. (Kota Kato,
+ closes #11845)
+
+Patch 9.0.1219
+Problem: Handling of FORTIFY_SOURCE flags doesn't match Fedora usage.
+Solution: Adjust the "sed" patterns. (Zdenek Dohnal, closes #11847)
+
+Patch 9.0.1220
+Problem: Termcap/terminfo entries do not indicate where modifiers might
+ appear.
+Solution: Add ";*" for function keys where modifiers are likely to be used.
+
+Patch 9.0.1221
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11833)
+
+Patch 9.0.1222
+Problem: Terminal tests are flaky on MacOS.
+Solution: Add TermWait() calls. (Yegappan Lakshmanan, closes #11852)
+
+Patch 9.0.1223
+Problem: Cannot use setcellwidths() below 0x100.
+Solution: Also accept characters between 0x80 and 0x100. (Ken Takata,
+ closes #11834)
+
+Patch 9.0.1224
+Problem: Cannot call a :def function with a number for a float argument.
+Solution: Accept a number as well, convert it to a float.
+
+Patch 9.0.1225
+Problem: Reading past the end of a line when formatting text.
+Solution: Check for not going over the end of the line.
+
+Patch 9.0.1226
+Problem: Spurious empty line when using text properties and virtual text.
+Solution: Do not set "text_prop_follows" when the other text property is not
+ virtual text. (closes #11846)
+
+Patch 9.0.1227
+Problem: No cmdline completion for :runtime.
+Solution: Add completion for :runtime. (closes #11853, closes #11447)
+ Improve the resulting matches.
+
+Patch 9.0.1228
+Problem: Fuzzy menu completion is only tested in the GUI.
+Solution: Make fuzzy menu completion test work without GUI.
+ (closes #11861)
+
+Patch 9.0.1229
+Problem: Cap'n Proto files are not recognized.
+Solution: Add a pattern and the "capnp" filetype. (Amaan Qureshi,
+ closes #11862)
+
+Patch 9.0.1230
+Problem: Apache thrift files are not recognized.
+Solution: Add a pattern for thrift files. (Amaan Qureshi, closes #11859)
+
+Patch 9.0.1231
+Problem: Completion of :runtime does not handle {where} argument.
+Solution: Parse the {where} argument. (closes #11863)
+
+Patch 9.0.1232
+Problem: ColorTable saving and restoring does not work properly.
+Solution: Restore ColorTable[16] usage. (Christopher Plewright,
+ closes #11836)
+
+Patch 9.0.1233
+Problem: search() loops forever if "skip" is TRUE for all matches.
+Solution: Keep the position of the first match.
+
+Patch 9.0.1234
+Problem: The code style has to be checked manually.
+Solution: Add basic code style checks in a test. Fix or avoid uncovered
+ problems.
+
+Patch 9.0.1235
+Problem: MS-Windows console: not flushing termguicolors.
+Solution: Flush termguicolors. (Christopher Plewright, closes #11871)
+
+Patch 9.0.1236
+Problem: Code in same_leader() can be simplified.
+Solution: Simplify code that is executed only once. (closes #11867)
+
+Patch 9.0.1237
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11858)
+
+Patch 9.0.1238
+Problem: :runtime completion can be further improved.
+Solution: Also complete the {where} argument values and adjust the
+ completion for that. (closes #11874)
+
+Patch 9.0.1239
+Problem: Cannot have a line break before an object member access.
+Solution: Check for "." in next line. (closes #11864)
+
+Patch 9.0.1240
+Problem: Cannot access a private object member in a lambda defined inside
+ the class.
+Solution: Go up the context stack to find the class. (closes #11866)
+
+Patch 9.0.1241
+Problem: Coverity warns for not checking function return value.
+Solution: Explicitly ignore the return value.
+
+Patch 9.0.1242
+Problem: Code for :runtime completion is not consistent.
+Solution: Make code for cmdline expansion more consistent. (closes #11875)
+
+Patch 9.0.1243
+Problem: :setglobal cannot use script-local function for "expr" option.
+Solution: Use the pointer to the option value properly. (closes #11883)
+
+Patch 9.0.1244
+Problem: Cursor briefly displayed in a wrong position when pressing Esc in
+ Insert mode after autoindent was used.
+Solution: Do not adjust the cursor position for assumed deleted white space
+ if text is following. (closes #11877)
+
+Patch 9.0.1245
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11879)
+
+Patch 9.0.1246
+Problem: Code is indented more than necessary.
+Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
+ closes #11887)
+
+Patch 9.0.1247
+Problem: Divide by zero with 'smoothscroll' set and a narrow window.
+Solution: Bail out when the window is too narrow.
+
+Patch 9.0.1248
+Problem: Cannot export an interface. (Ernie Rael)
+Solution: Add the EX_EXPORT flag to :interface. (closes #11884)
+
+Patch 9.0.1249
+Problem: Cannot export an abstract class. (Ernie Rael)
+Solution: Add the EX_EXPORT flag to :abstract. (closes #11884)
+
+Patch 9.0.1250
+Problem: Cannot use an object method with :defer. (Ernie Rael)
+Solution: Find the object method and generate code to call it.
+ (closes #11886)
+
+Patch 9.0.1251
+Problem: Checking returned value of ga_grow() is inconsistent.
+Solution: Check for FAIL instead of "not OK". (Yegappan Lakshmanan,
+ closes #11897)
+
+Patch 9.0.1252
+Problem: MS-Windows: scrollback cropped off on Vim exit.
+Solution: Don't call SetConsoleScreenBufferInfoEx when using the alternate
+ screen buffer. (Christopher Plewright, closes #11882)
+
+Patch 9.0.1253
+Problem: CI adds repository unnecessarily.
+Solution: Remove the line from the workflow. (closes #11900)
+
+Patch 9.0.1254
+Problem: Calling a method on an interface does not work.
+Solution: At runtime figure out what method to call. (closes #11901)
+
+Patch 9.0.1255
+Problem: Changing 'virtualedit' does not have immediate effect.
+Solution: Correct how is checked for a changed value. (closes #11878)
+
+Patch 9.0.1256
+Problem: NetworkManager connection files are not recognized.
+Solution: Add a pattern for NetworkManager connection files. (closes #11893)
+
+Patch 9.0.1257
+Problem: Code style is not check in test scripts.
+Solution: Add basic code style check for test files.
+
+Patch 9.0.1258
+Problem: Code style test fails.
+Solution: Adjust test files.
+
+Patch 9.0.1259
+Problem: Diffmode test fails.
+Solution: Adjust expected result for adjusted indenting.
+
+Patch 9.0.1260
+Problem: Coverity warns for possible NULL pointer usage.
+Solution: Change the condition.
+
+Patch 9.0.1261
+Problem: Elsa files are not recognized.
+Solution: Add a pattern for Elsa files. (Amaan Qureshi, closes #11908)
+
+Patch 9.0.1262
+Problem: The did_set_string_option function is too long.
+Solution: Split off functionality to individual functions. (Yegappan
+ Lakshmanan, Lewis Russell, closes #11904)
+
+Patch 9.0.1263
+Problem: KDL files are not recognized.
+Solution: Add a pattern for KDL files. (Amaan Qureshi, closes #11898)
+
+Patch 9.0.1264
+Problem: Motif: compiler warning for unused argument.
+Solution: Add "UNUSED".
+
+Patch 9.0.1265
+Problem: Using an interface method may give a compilation error.
+Solution: Do not try to compile the body of a method of an interface.
+ (closes #11885)
+
+Patch 9.0.1266
+Problem: Error for space before ": type" is inconsistent.
+Solution: Give E1059 in more places. (closes #11868)
+
+Patch 9.0.1267
+Problem: The did_set_string_option function is too long.
+Solution: Further cleanup of handling string options. (Yegappan Lakshmanan,
+ Lewis Russell, closes #11920)
+
+Patch 9.0.1268
+Problem: .clangd and .stylelintrc files don't get a filetype.
+Solution: Use yaml for .clangd and json for .stylelintrc files. (Mark
+ Skelton, closes #11916)
+
+Patch 9.0.1269
+Problem: Channel test often fails on Mac OS.
+Solution: Increase the wait time from one to 15 milliseconds. (D. Ben
+ Knoble, closes #11894)
+
+Patch 9.0.1270
+Problem: Crash when using search stat in narrow screen.
+Solution: Check length of message. (closes #11921)
+
+Patch 9.0.1271
+Problem: Using sizeof() and subtract array size is tricky.
+Solution: Use offsetof() instead. (closes #11926)
+
+Patch 9.0.1272
+Problem: Typo in pattern for filetype detection.
+Solution: Fix the typo. (closes #11924)
+
+Patch 9.0.1273
+Problem: "1v" may select block with wrong size. (Evgeni Chasnovski)
+Solution: Compute "curswant" in the right line. (closes #11925)
+
+Patch 9.0.1274
+Problem: FIRRTL files are not recognized.
+Solution: Add a pattern for FIRRTL files. (Amaan Qureshi, closes #11931)
+
+Patch 9.0.1275
+Problem: The code for setting options is too complicated.
+Solution: Refactor the do_set() function. (Yegappan Lakshmanan, Lewis
+ Russell, closes #11932)
+
+Patch 9.0.1276
+Problem: Some mappings with Meta and Shift do not work.
+Solution: Apply the Shift modifier to the key. (issue #11913)
+
+Patch 9.0.1277
+Problem: Cursor may move with autocmd in Visual mode.
+Solution: Restore "VIsual_active" before calling check_cursor().
+ (closes #11939)
+
+Patch 9.0.1278
+Problem: go.work.sum files are not recognized.
+Solution: Recognize go.work.sum files as the gosum filetype. (Amaan Qureshi,
+ closes #11940)
+
+Patch 9.0.1279
+Problem: Display shows lines scrolled down erroneously. (Yishai Lerner)
+Solution: Do not change "wl_lnum" at index zero. (closes #11938)
+
+Patch 9.0.1280
+Problem: Insufficient testing for what 9.0.1265 fixes.
+Solution: Add a couple of test cases. (issue #11885)
+
+Patch 9.0.1281
+Problem: Cadence files are not recognized.
+Solution: Recognize Cadence files. (Janez Podhostnik, closes #11951)
+
+Patch 9.0.1282
+Problem: Ron files are not recognized.
+Solution: Recognize Ron files. (Amaan Qureshi, closes #11948)
+
+Patch 9.0.1283
+Problem: The code for setting options is too complicated.
+Solution: Refactor the do_set() function. (Yegappan Lakshmanan, Lewis
+ Russell, closes #11945)
+
+Patch 9.0.1284
+Problem: Compiler warnings for uninitialized variables. (Tony Mechelynck)
+Solution: Add variable initializations.
+
+Patch 9.0.1285
+Problem: Various small problems.
+Solution: Adjust white space and comments.
+
+Patch 9.0.1286
+Problem: Coverity warns for using a NULL pointer.
+Solution: Bail out whan "varp" is NULL.
+
+Patch 9.0.1287
+Problem: With the Kitty key protocol Esc with NumLock cannot be mapped.
+Solution: Also use K_ESC when there is a modifier. (closes #11811)
+
+Patch 9.0.1288
+Problem: FunC files are not recognized.
+Solution: Recognize FunC files. (Amaan Qureshi, closes #11949)
+
+Patch 9.0.1289
+Problem: A newer version of clang can be used for CI.
+Solution: Switch from clang-15 to clang-16. (closes #11577)
+
+Patch 9.0.1290
+Problem: CTRL-N and -P on cmdline don't trigger CmdlineChanged.
+Solution: Jump to cmdline_changed instead of cmdline_not_changed.
+ (closes #11956)
+
+Patch 9.0.1291
+Problem: Move language files are not recognized.
+Solution: Recognize Move language files. (Amaan Qureshi, closes #11947)
+
+Patch 9.0.1292
+Problem: :defer may call the wrong method for an object. (Ernie Rael)
+Solution: When en object is from a class that extends or implements, figure
+ out the method to call at runtime. (closes #11910)
+
+Patch 9.0.1293
+Problem: The set_num_option() is too long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #11954)
+
+Patch 9.0.1294
+Problem: The set_bool_option() function is too long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #11964)
+
+Patch 9.0.1295
+Problem: The option initialization function is too long.
+Solution: Move code to separate functions. (Yegappan Lakshmanan,
+ closes #11966)
+
+Patch 9.0.1296
+Problem: Calling an object method with arguments does not work. (Ernie
+ Rael)
+Solution: Take the argument count into account when looking up the object.
+ (closes #11911)
+
+Patch 9.0.1297
+Problem: Wrong value for $LC_CTYPE makes the environ test fail.
+Solution: Unset $LC_CTYPE when running tests. (closes #11963)
+
+Patch 9.0.1298
+Problem: Inserting a register on the command line does not trigger
+ incsearch or update hlsearch.
+Solution: Have cmdline_insert_reg() return CMDLINE_CHANGED when appropriate
+ and handle it correctly. (Ken Takata, closes #11960)
+
+Patch 9.0.1299
+Problem: Change for triggering incsearch not sufficiently tested.
+Solution: Add a test case. Simplify the code. (closes #11971)
+
+Patch 9.0.1300
+Problem: 'statusline' only supports one "%=" item.
+Solution: Add support for multiple "%=" items. (TJ DeVries, Yegappan
+ Lakshmanan, closes #11970, closes #11965)
+
+Patch 9.0.1301
+Problem: Virtual text below empty line not displayed.
+Solution: Adjust flags and computations. (closes #11959)
+
+Patch 9.0.1302
+Problem: On a Belgian keyboard CTRL-] does not work.
+Solution: Translate CTRL-$ into CTRL-]. (closes #11831)
+
+Patch 9.0.1303
+Problem: Motif: scrollbar width/height wrong when maximized.
+Solution: Set the width/height when creating the scrollbar. (closes #11946)
+
+Patch 9.0.1304
+Problem: "$" for 'list' option displayed in wrong position when there are
+ text properties.
+Solution: Adjust logic for order of displayed items. (closes #11959)
+
+Patch 9.0.1305
+Problem: Cursor in wrong line with virtual text above.
+Solution: Count extra line for text property above/below. (closes #11959)
+
+Patch 9.0.1306
+Problem: No regression test for solved problem of #11959.
+Solution: Add a test, also with 'list' set. (closes #11959)
+
+Patch 9.0.1307
+Problem: Setting 'formatoptions' with :let doesn't check for errors.
+Solution: Pass "errbuf" to set_string_option(). (Yegappan Lakshmanan,
+ closes #11974, closes #11972)
+
+Patch 9.0.1308
+Problem: The code for setting options is too complicated.
+Solution: Refactor the code for setting options. (Yegappan Lakshmanan,
+ closes #11989)
+
+Patch 9.0.1309
+Problem: Scrolling two lines with even line count and 'scrolloff' set.
+Solution: Adjust how the topline is computed. (closes #10545)
+
+Patch 9.0.1310
+Problem: 'splitkeep' test has failures.
+Solution: Adjust expected cursor line position.
+
+Patch 9.0.1311
+Problem: Coverity warns for using a NULL pointer.
+Solution: Use "empty_option" instead of NULL.
+
+Patch 9.0.1312
+Problem: Cursor position wrong when splitting window in insert mode.
+Solution: Pass the actual mode to win_fix_cursor(). (Luuk van Baal,
+ closes #11999,
+
+Patch 9.0.1313
+Problem: Some settings use the current codepage instead of 'encoding'.
+Solution: Adjust how options are initialized. (Ken Takata, closes #11992)
+
+Patch 9.0.1314
+Problem: :messages behavior depends on 'fileformat' of current buffer.
+Solution: Pass the buffer pointer to where it is used. (Mirko Ceroni,
+ closes #11995)
+
+Patch 9.0.1315
+Problem: Escaping for completion of map command not properly tested.
+Solution: Add a few test cases. (closes #12009)
+
+Patch 9.0.1316
+Problem: MS-Windows: vimfiles dir created with admin group.
+Solution: Use ShellExecAsUser to create the vimfiles directory. (Christopher
+ Plewright, Ken Takata, closes #12000, closes #11888)
+
+Patch 9.0.1317
+Problem: Crash when using an unset object variable.
+Solution: Give an error instead. (closes #12005)
+
+Patch 9.0.1318
+Problem: Code style test fails.
+Solution: Remove trailing white space.
+
+Patch 9.0.1319
+Problem: PRQL files are not recognized.
+Solution: Add a filetype pattern for PRQL files. (Matthias Queitsch,
+ closes #12018)
+
+Patch 9.0.1320
+Problem: Checking the type of a null object causes a crash.
+Solution: Don't try to get the class of a null object. (closes #12005)
+ Handle error from calling a user function better.
+
+Patch 9.0.1321
+Problem: vimscript test fails where using {expr} syntax.
+Solution: Only return FCERR_FAILED in call_user_func() for Vim9 script.
+
+Patch 9.0.1322
+Problem: Crash when indexing "any" which is an object.
+Solution: Check the index is a number. Do not check the member type of an
+ object. (closes #12019)
+
+Patch 9.0.1323
+Problem: Build failure with +eval feature.
+Solution: Add missing part for using funcerror_T.
+
+Patch 9.0.1324
+Problem: "gj" and "gk" do not move correctly over a closed fold.
+Solution: Use the same code as used for "j"/"k" to go to the next/previous
+ line. (Luuk van Baal, closes #12007)
+
+Patch 9.0.1325
+Problem: 'colorcolumn' highlight wrong with virtual text above.
+Solution: Adjust column of 'colorcolumn' for text property. (closes #12004)
+
+Patch 9.0.1326
+Problem: Relative line number not updated with virtual text above.
+Solution: Adjust the row for the line number for virtual text above.
+ (closes #12004)
+
+Patch 9.0.1327
+Problem: Cursor in wrong position below line with virtual text below ending
+ in multi-byte character.
+Solution: When checking for last character take care of multi-byte
+ character.
+
+Patch 9.0.1328
+Problem: Error when using "none" for GUI color is confusing.
+Solution: Mention that the name should perhaps be "NONE". (closes #1400)
+
+Patch 9.0.1329
+Problem: Completion of map includes simplified ones.
+Solution: Do not complete simplified mappings. (closes #12013)
+
+Patch 9.0.1330
+Problem: Handling new value of an option has a long "else if" chain.
+Solution: Use a function pointer. (Yegappan Lakshmanan, closes #12015)
+
+Patch 9.0.1331
+Problem: Illegal memory access when using :ball in Visual mode.
+Solution: Stop Visual mode when using :ball. (Pavel Mayorov, closes #11923)
+
+Patch 9.0.1332
+Problem: Crash when using buffer-local user command in cmdline window.
+ (Karl Yngve Lervåg)
+Solution: Use the right buffer to find the user command. (closes #12030,
+ closes #12029)
+
+Patch 9.0.1333
+Problem: When redo'ing twice <ScriptCmd> may not get the script ID.
+Solution: When "last_used_map" map is not set use "last_used_sid".
+ (closes #11930)
+
+Patch 9.0.1334
+Problem: Using tt_member for the class leads to mistakes.
+Solution: Add a separate tt_class field.
+
+Patch 9.0.1335
+Problem: No test for bad use of spaces in help files.
+Solution: Add checks for use of spaces in help files. Ignore intentional
+ spaces. (Hirohito Higashi, closes #11952)
+
+Patch 9.0.1336
+Problem: Functions without arguments are not always declared properly.
+Solution: Use "(void)" instead of "()". (Yegappan Lakshmanan, closes #12031)
+
+Patch 9.0.1337
+Problem: Yuck files are not recognized.
+Solution: Add a filetype pattern for yuck files. (Amaan Qureshi,
+ closes #12033)
+
+Patch 9.0.1338
+Problem: :defcompile and :disassemble can't find class method. (Ernie Rael)
+Solution: Make a class name and class.method name work. (closes #11984)
+
+Patch 9.0.1339
+Problem: No test for :disassemble with class function.
+Solution: Add a test.
+
+Patch 9.0.1340
+Problem: Coverity warns for using NULL pointer.
+Solution: Check that lhs_type is not NULL.
+
+Patch 9.0.1341
+Problem: Build error with mzscheme but without GUI.
+Solution: Adjust #ifdefs. (Ken Takata, closes #12042) Also fix function
+ argument.
+
+Patch 9.0.1342
+Problem: MS-Windows: linking may fail with space in directory name.
+Solution: Add quotes. (closes #12050)
+
+Patch 9.0.1343
+Problem: Check for OSC escape sequence doesn't work.
+Solution: Move square bracket to the right place. (Johan Mattsson,
+ closes #12048)
+
+Patch 9.0.1344
+Problem: Check for OSC escape sequence doesn't work.
+Solution: Fix typo in index.
+
+Patch 9.0.1345
+Problem: Too many "else if" statements for handling options.
+Solution: Add more functions to handle options. (Yegappan Lakshmanan,
+ closes #12051)
+
+Patch 9.0.1346
+Problem: Starlark files are not recognized.
+Solution: Add patterns for Starlark files. (Amaan Qureshi, closes #12049)
+
+Patch 9.0.1347
+Problem: "gr CTRL-O" stays in Insert mode. (Pierre Ganty)
+Solution: Do not set restart_edit when "cmdchar" is 'v'. (closes #12045)
+
+Patch 9.0.1348
+Problem: Un-grammar files are not recognized.
+Solution: Add patterns for Un-grammar files. (Amaan Qureshi, closes #12034)
+
+Patch 9.0.1349
+Problem: "gr" with a count fails.
+Solution: Break out of the loop only after using the count.
+
+Patch 9.0.1350
+Problem: CPON files are not recognized.
+Solution: Add patterns for CPON files. (Amaan Qureshi, closes #12053)
+
+Patch 9.0.1351
+Problem: Dhall files are not recognized.
+Solution: Add patterns for Dhall files. (Amaan Qureshi, closes #12052)
+
+Patch 9.0.1352
+Problem: "ignore" files are outdated.
+Solution: Update "ignore" files. (Ken Takata, closes #12056)
+
+Patch 9.0.1353
+Problem: Too many "else if" statements to handle option values.
+Solution: Add more functions to handle option value changes. (Yegappan
+ Lakshmanan, closes #12058)
+
+Patch 9.0.1354
+Problem: "gr CTRL-G" stays in virtual replace mode. (Pierre Ganty)
+Solution: Prepend CTRL-V before control characters. (closes #12045)
+
+Patch 9.0.1355
+Problem: No error when declaring a class twice. (Ernie Rael)
+Solution: Pass different flags when declaring the class. (closes #12057)
+
+Patch 9.0.1356
+Problem: Cannot cancel "gr" with Esc.
+Solution: Make "gr<Esc>" do nothing. (closes #12064)
+
+Patch 9.0.1357
+Problem: Using null_object results in an internal error. (Ernie Rael)
+Solution: Add instructions for pushing an object and class. (closes #12044)
+
+Patch 9.0.1358
+Problem: Compilation error with some compilers.
+Solution: Avoid using "class" as member name.
+
+Patch 9.0.1359
+Problem: Too many "else if" statements in handling options.
+Solution: Add more functions for handling option changes. (Yegappan
+ Lakshmanan, closes #12060)
+
+Patch 9.0.1360
+Problem: Cue files are not recognized.
+Solution: Add patterns for Cue files. (Amaan Qureshi, closes #12067)
+
+Patch 9.0.1361
+Problem: extendnew() not sufficiently tested.
+Solution: Add a few more test cases for extendnew(). (closes #12075)
+
+Patch 9.0.1362
+Problem: ml_get error when going to another tab. (Daniel J. Perry)
+Solution: Do not call update_topline() if "curwin" is invalid.
+ (closes #11907)
+
+Patch 9.0.1363
+Problem: Crash when :def function has :break in skipped block. (Ernie Rael)
+Solution: Don't generate a jump for a skipped :break. (closes #12077)
+
+Patch 9.0.1364
+Problem: Build error with older Mac OS.
+Solution: Adjust #ifdef. (Yee Cheng Chin, closes #12074)
+
+Patch 9.0.1365
+Problem: Dead test code.
+Solution: Remove code that depends on Farsi, which has been removed.
+ (closes #12084)
+
+Patch 9.0.1366
+Problem: Functions for setting options are in random order.
+Solution: Sort functions alphabetically. (Yegappan Lakshmanan,
+ closes #12082)
+
+Patch 9.0.1367
+Problem: Divide by zero in zero-width window.
+Solution: Check the width is positive.
+
+Patch 9.0.1368
+Problem: Bass files are not recognized.
+Solution: Add patterns for Bass files. (Amaan Qureshi, closes #12088)
+
+Patch 9.0.1369
+Problem: Still some "else if" constructs for setting options.
+Solution: Add a few more functions for handling options. (Yegappan
+ Lakshmanan, closes #12090)
+
+Patch 9.0.1370
+Problem: Crash when using a NULL object. (Ernie Rael)
+Solution: Check for NULL and give an error message. (closes #12083)
+
+Patch 9.0.1371
+Problem: Ballooneval interferes with Insert completion.
+Solution: Ignore mouse-move events when completing. (closes #12094,
+ closes #12092)
+
+Patch 9.0.1372
+Problem: Test for 'toolbariconsize' may fail.
+Solution: Only test 'toolbariconsize' when it is supported. (James McCoy,
+ closes #12095)
+
+Patch 9.0.1373
+Problem: Wrong text displayed when using both 'linebreak' and 'list'.
+Solution: Only set "c_extra" to NUL when "p_extra" is not empty. (Hirohito
+ Higashi, closes #12065)
+
+Patch 9.0.1374
+Problem: Function for setting options not used consistently.
+Solution: Use a function for 'encoding' and terminal options. (Yegappan
+ Lakshmanan, closes #12099)
+
+Patch 9.0.1375
+Problem: Crash when getting member of obj of unknown class.
+Solution: Check for NULL class and give an error message. (Ernie Rael,
+ closes #12096)
+
+Patch 9.0.1376
+Problem: Accessing invalid memory with put in Visual block mode.
+Solution: Adjust the cursor column if needed.
+
+Patch 9.0.1377
+Problem: job_status() may return "dead" if the process parent changed.
+Solution: Call mch_process_running() to check if the job is still alive.
+
+Patch 9.0.1378
+Problem: Illegal memory access when using virtual editing.
+Solution: Make sure "startspaces" is not negative.
+
+Patch 9.0.1379
+Problem: Functions for handling options are not ordered.
+Solution: Put functions in alphabetical order. (Yegappan Lakshmanan,
+ closes #12101)
+
+Patch 9.0.1380
+Problem: CTRL-X on 2**64 subtracts two. (James McCoy)
+Solution: Correct computation for large number. (closes #12103)
+
+Patch 9.0.1381
+Problem: ACCESS_ names have a conflict with on some systems.
+Solution: Rename by prepending VIM_. (Ola Söder, closes #12105)
+
+Patch 9.0.1382
+Problem: Failing test for strptime() doesn't show returned value.
+Solution: Use assert_equal() instead of assert_true().
+
+Patch 9.0.1383
+Problem: xxd: combination of little endian and cols fails. (Aapo
+ Rantalainen)
+Solution: Round up the space taken by the hex output. (closes #12097)
+
+Patch 9.0.1384
+Problem: Setting HOMEBREW_NO_AUTO_UPDATE is not needed with Homebrew
+ version 4.
+Solution: Remove setting HOMEBREW_NO_AUTO_UPDATE. (closes #12008)
+
+Patch 9.0.1385
+Problem: g'Esc is considered an error.
+Solution: Make g'Esc silently abandon the command. (closes #12110)
+
+Patch 9.0.1386
+Problem: Options test fails with some window width.
+Solution: Adjust what text the test checks with. (closes #12111)
+
+Patch 9.0.1387
+Problem: Scrollbar test sporadically fails.
+Solution: Mark the scrollbar test as flaky. (Christian Brabandt,
+ closes #12113)
+
+Patch 9.0.1388
+Problem: Amiga: not all builds use gethostname().
+Solution: Use gethostname() for all builds except AROS. (Ola Söder,
+ closes #12107)
+
+Patch 9.0.1389
+Problem: Amiga: a couple of include files are included twice.
+Solution: Remove duplicate includes. (Ola Söder, closes #12106)
+
+Patch 9.0.1390
+Problem: FOR_ALL_ macros are defined in an unexpected file.
+Solution: Move FOR_ALL_ macros to macros.h. Add FOR_ALL_HASHTAB_ITEMS.
+ (Yegappan Lakshmanan, closes #12109)
+
+Patch 9.0.1391
+Problem: "clear" macros are not always used.
+Solution: Use ALLOC_ONE, VIM_CLEAR, CLEAR_POINTER and CLEAR_FIELD in more
+ places. (Yegappan Lakshmanan, closes #12104)
+
+Patch 9.0.1392
+Problem: Using NULL pointer with nested :open command.
+Solution: Check that ccline.cmdbuff is not NULL.
+
+Patch 9.0.1393
+Problem: Cairo files are not recognized.
+Solution: Add a pattern for Cairo files. (Amaan Qureshi, closes #12118)
+
+Patch 9.0.1394
+Problem: Unx Tal files are not recognized.
+Solution: Add a pattern for Unx Tal files. (Amaan Qureshi, closes #12117)
+
+Patch 9.0.1395
+Problem: Odin files are not recognized.
+Solution: Add a pattern for Odin files. (Amaan Qureshi, closes #12122)
+
+Patch 9.0.1396
+Problem: sort(list, 'N') does not work in Vim9 script context.
+Solution: Convert string to number without giving an error. (closes #12061)
+
+Patch 9.0.1397
+Problem: Highlight for popupmenu kind and extra cannot be set.
+Solution: Add PmenuKind, PmenuKindSel, PmenuExtra and PmenuExtraSel
+ highlight groups and use them. (Gianmaria Bajo, closes #12114)
+
+Patch 9.0.1398
+Problem: Profile test repeats the headers many times.
+Solution: Put the headers in script variables.
+
+Patch 9.0.1399
+Problem: Highlight test script has a few problems.
+Solution: Rewrite the script in Vim9 syntax. (closes #10379)
+
+Patch 9.0.1400
+Problem: find_file_in_path() is not reentrant.
+Solution: Instead of global variables pass pointers to the functions.
+ (closes #12093)
+
+Patch 9.0.1401
+Problem: Condition is always true.
+Solution: Remove the condition. (closes #12139)
+
+Patch 9.0.1402
+Problem: Crash when using null_class.
+Solution: Give an error when trying to use a null class.
+
+Patch 9.0.1403
+Problem: Unused variables and functions.
+Solution: Delete items and adjust #ifdefs. (Dominique Pellé, closes #12145)
+
+Patch 9.0.1404
+Problem: Compilation error with some compilers.
+Solution: Adjust array initialization. (John Marriott)
+
+Patch 9.0.1405
+Problem: Missing check for out-of-memory.
+Solution: Check for alloc() returning NULL pointer. (closes #12149)
+
+Patch 9.0.1406
+Problem: ILE RPG files are not recognized.
+Solution: Add patterns for ILE RPG files. (Andreas Louv, issue #12152)
+
+Patch 9.0.1407
+Problem: TableGen files are not recognized.
+Solution: Add a pattern for TableGen files. (Amaan Qureshi, closes #12156)
+
+Patch 9.0.1408
+Problem: QMLdir files are not recognized.
+Solution: Add a pattern for QMLdir files. (Amaan Qureshi, closes #12161)
+
+Patch 9.0.1409
+Problem: Racket files are recognized as scheme.
+Solution: Recognize rackets files separately. (Gabriel Kakizaki,
+ closes #12164, closes #12162)
+
+Patch 9.0.1410
+Problem: MacOS: sed fails on .po files.
+Solution: Set $LANG to "C". (Yee Cheng Chin, closes #12153)
+
+Patch 9.0.1411
+Problem: Accuracy of profiling is not optimal.
+Solution: Use CLOCK_MONOTONIC if possible. (Ernie Rael, closes #12129)
+
+Patch 9.0.1412
+Problem: Pony files are not recognized.
+Solution: Add a pattern for Pony files. (Amaan Qureshi, closes #12155)
+
+Patch 9.0.1413
+Problem: Compiler warning for unused variable.
+Solution: Move variable declaration. (John Marriott)
+
+Patch 9.0.1414
+Problem: <M-S-x> in Kitty does not use the Shift modifier.
+Solution: Apply the Shift modifier to ASCII letters. (closes #11913)
+
+Patch 9.0.1415
+Problem: Crystal files are not recognized.
+Solution: Add a pattern for Crystal files. (Amaan Qureshi, closes #12175)
+
+Patch 9.0.1416
+Problem: Crash when collection is modified when using filter().
+Solution: Lock the list/dict/blob. (Ernie Rael, closes #12183)
+
+Patch 9.0.1417
+Problem: ESDL files are not recognized.
+Solution: Add a pattern for ESDL files. (Amaan Qureshi, closes #12174)
+
+Patch 9.0.1418
+Problem: The included xdiff code is a bit outdated.
+Solution: Sync with the latest git xdiff code. (Yee Cheng Chin,
+ closes #12181)
+
+Patch 9.0.1419
+Problem: Lean files are not recognized.
+Solution: Add a pattern for Lean files. (Amaan Qureshi, closes #12177)
+
+Patch 9.0.1420
+Problem: Build failure because SIZE_MAX is not defined.
+Solution: Define SIZE_MAX when missing. (John Marriott)
+
+Patch 9.0.1421
+Problem: Nu files are not recognized.
+Solution: Add a pattern for Nu files. (Amaan Qureshi, closes #12172)
+
+Patch 9.0.1422
+Problem: Sage files are not recognized.
+Solution: Add a pattern for Sage files. (Amaan Qureshi, closes #12176)
+
+Patch 9.0.1423
+Problem: WebAssembly Interface Type files are not recognized.
+Solution: Add a pattern for WIT files. (Amaan Qureshi, closes #12173)
+
+Patch 9.0.1424
+Problem: Unused macros are defined.
+Solution: Remove the unused macros.
+
+Patch 9.0.1425
+Problem: "wat" and "wast" files are one filetype.
+Solution: Add a separate filetype for "wat" files. (Amaan Qureshi,
+ closes #12165)
+
+Patch 9.0.1426
+Problem: Indent wrong after "export namespace" in C++.
+Solution: Skip over "inline" and "export" in any order. (Virginia Senioria,
+ closes #12134, closes #12133)
+
+Patch 9.0.1427
+Problem: Warning for uninitialized variable. (Tony Mechelynck)
+Solution: Add #ifdef.
+
+Patch 9.0.1428
+Problem: Cursor in wrong position when leaving insert mode.
+Solution: Update the w_valid flags. Position the cursor also when not
+ redrawing. (closes #12137)
+
+Patch 9.0.1429
+Problem: Invalid memory access when ending insert mode.
+Solution: Check if the insert_skip value is valid.
+
+Patch 9.0.1430
+Problem: Livebook files are not recognized.
+Solution: Add a pattern for Livebook files. (Mathias Jean Johansen,
+ closes #12203)
+
+Patch 9.0.1431
+Problem: getscriptinfo() loops even when specific SID is given.
+Solution: Only loop when needed. Give a clearer error message.
+ (closes #12207)
+
+Patch 9.0.1432
+Problem: Completion popup in wrong position with virtual text "above".
+Solution: Adjust the column. (closes #12210)
+
+Patch 9.0.1433
+Problem: On some systems the Lua library is not found.
+Solution: Check if a subdirectory for Lua exists. (closes #4475)
+
+Patch 9.0.1434
+Problem: Crash when adding package already in 'runtimepath'.
+Solution: Change order for using 'runtimepath' entries. (closes #12215)
+
+Patch 9.0.1435
+Problem: Scrolling too many lines when 'wrap' and 'diff' are set.
+Solution: Only scroll by screenlines for 'diff' when 'wrap' is not set.
+ (closes #12211)
+
+Patch 9.0.1436
+Problem: Cannot compare a typed variable with v:none.
+Solution: Allow for "x is v:none" and "x isnot v:none". (issue #12194)
+
+Patch 9.0.1437
+Problem: Test fails with different error number.
+Solution: Adjust the expected error.
+
+Patch 9.0.1438
+Problem: .fs files are falsely recognized as forth files.
+Solution: Check 100 lines for something that looks like forth. (Johan
+ Kotlinski, closes #12219, closes #11988)
+
+Patch 9.0.1439
+Problem: Start Insert mode when accessing a hidden prompt buffer.
+Solution: Call leaving_window() in aucmd_restbuf(). (Thorben Tröbst,
+ closes #12148, closes #12147)
+
+Patch 9.0.1440
+Problem: "rvim" can execute a shell through :diffpatch.
+Solution: Disallow the shell "patch" command.
+
+Patch 9.0.1441
+Problem: MacOS: Python 3 using framework do not set dll name properly.
+Solution: Use the framework prefix. (Yee Cheng Chin, closes #12189)
+
+Patch 9.0.1442
+Problem: mapset() does not restore non-script context.
+Solution: Also accept negative sid. (closes #12132)
+
+Patch 9.0.1443
+Problem: Ending Insert mode when accessing a hidden prompt buffer.
+Solution: Don't stop Insert mode when it was active before. (closes #12237)
+
+Patch 9.0.1444
+Problem: Crash when passing NULL to setcmdline(). (Andreas Louv)
+Solution: Use tv_get_string() instead of using v_string directly.
+ (closes #12231, closes #12227)
+
+Patch 9.0.1445
+Problem: openSUSE: configure doesn't find the Motif library. (Tony
+ Mechelynck)
+Solution: Also search in /usr/lib64.
+
+Patch 9.0.1446
+Problem: Unnecessary checks for the "skip" flag when skipping.
+Solution: Remove the unnecessary checks. (closes #12254)
+
+Patch 9.0.1447
+Problem: Condition is always true.
+Solution: Remove the useless condition. (closes #12253)
+
+Patch 9.0.1448
+Problem: Diff test fails on MacOS 13.
+Solution: Install GNU diffutils. (Ozaki Kiichi, closes #12258)
+
+Patch 9.0.1449
+Problem: Test for prompt buffer is flaky.
+Solution: Use WaitForAssert() instead of TermWait(). (Ozaki Kiichi,
+ closes #12247)
+
+Patch 9.0.1450
+Problem: MacOS: building fails if clock_gettime() is not available.
+Solution: Add a configure check for clock_gettime(). (closes #12242)
+
+Patch 9.0.1451
+Problem: Unnecessary redrawing when 'showcmdloc' is not "last".
+Solution: Redraw later when "showcmd_is_clear" is set. (Luuk van Baal,
+ closes #12260)
+
+Patch 9.0.1452
+Problem: Code using EVAL_CONSTANT is dead, it is never set.
+Solution: Remove EVAL_CONSTANT. (closes #12252)
+
+Patch 9.0.1453
+Problem: Typos in source code and tests.
+Solution: Fix the typos. (Dominique Pellé, closes #12217)
+
+Patch 9.0.1454
+Problem: Code indenting is confused by macros.
+Solution: Put semicolon after the macros instead of inside. (Ozaki Kiichi,
+ closes #12257)
+
+Patch 9.0.1455
+Problem: C++ 20 modules are not recognized.
+Solution: Add patterns to recognize C++ 20 modules as "cpp". (Ben Jackson,
+ closes #12261)
+
+Patch 9.0.1456
+Problem: Shortmess test depends on order of test execution.
+Solution: Clear messages. (closes #12264)
+
+Patch 9.0.1457
+Problem: No regression test for what patch 9.0.1333 fixes.
+Solution: Extend existing test to cover the fixed problem. (issue #11930)
+
+Patch 9.0.1458
+Problem: Buffer overflow when expanding long file name.
+Solution: Use a larger buffer and avoid overflowing it. (Yee Cheng Chin,
+ closes #12201)
+
+Patch 9.0.1459
+Problem: Typo in name of type.
+Solution: Change funccal_T to funccall_T. (closes #12265)
+
+Patch 9.0.1460
+Problem: Insufficient testing for getcmdcompltype().
+Solution: Add a few more test cases. (closes #12268)
+
+Patch 9.0.1461
+Problem: Ruler not drawn correctly when using 'rulerformat'.
+Solution: Adjust formatting depending on whether the ruler is drawn in the
+ statusline or the command line. (Sean Dewar, closes #12246)
+
+Patch 9.0.1462
+Problem: Recursively calling :defer function if it does :qa.
+Solution: Clear the defer entry before calling the function. (closes #12266)
+
+Patch 9.0.1463
+Problem: Virtual text truncation only works with Unicode 'encoding'.
+Solution: Convert the ellipsis character to 'encoding' if needed. (Hirohito
+ Higashi, closes #12233)
+
+Patch 9.0.1464
+Problem: Strace filetype detection is expensive.
+Solution: Match with a cheap pattern first. (Federico Mengozzi,
+ closes #12220)
+
+Patch 9.0.1465
+Problem: Haiku build fails.
+Solution: Do not include globals.h and proto.h twice. (Ozaki Kiichi,
+ closes #12273)
+
+Patch 9.0.1466
+Problem: Cannot use an object member name as a method argument.
+Solution: Do not give an error for using an object member name for a method
+ argument. (Hirohito Higashi, closes #12241, closes #12225)
+ Fix line number for other argument error.
+
+Patch 9.0.1467
+Problem: Jenkinsfiles are not recognized as groovy.
+Solution: Add a pattern for Jenkinsfiles. (closes #12236)
+
+Patch 9.0.1468
+Problem: Recursively calling :defer function if it does :qa in a compiled
+ function.
+Solution: Clear the defer entry before calling the function. (closes #12271)
+
+Patch 9.0.1469
+Problem: Deferred functions not called from autocommands.
+Solution: Also go through the funccal_stack. (closes #12267)
+
+Patch 9.0.1470
+Problem: Deferred functions invoked in unexpected order when using :qa and
+ autocommands.
+Solution: Call deferred functions for the current funccal before using the
+ stack. (closes #12278)
+
+Patch 9.0.1471
+Problem: Warnings for function declarations.
+Solution: Add argument types. (Michael Jarvis, closes #12277)
+
+Patch 9.0.1472
+Problem: ":drop fname" may change the last used tab page.
+Solution: Restore the last used tab page when :drop has changed it.
+ (closes #12087)
+
+Patch 9.0.1473
+Problem: CI does not run sound tests.
+Solution: Re-enable sound tests. Use "apt-get" instead of "apt". (Ozaki
+ Kiichi, closes #12280)
+
+Patch 9.0.1474
+Problem: CI runs with old version of Ubuntu and tools.
+Solution: Update CI to more recent versions. (closes #11092)
+
+Patch 9.0.1475
+Problem: Busted configuration files are not recognized.
+Solution: Recognize busted configuration files as Lua. (Craig MacEachern,
+ closes #12209)
+
+Patch 9.0.1476
+Problem: Lines put in non-current window are not displayed. (Marius
+ Gedminas)
+Solution: Don't increment the topline when inserting just above it.
+ (closes #12212)
+
+Patch 9.0.1477
+Problem: Crash when recovering from corrupted swap file.
+Solution: Check for a valid page count. (closes #12275)
+
+Patch 9.0.1478
+Problem: Filetypes for *.v files not detected properly.
+Solution: Use the file contents to detect the filetype. (Turiiya,
+ closes #12281)
+
+Patch 9.0.1479
+Problem: Small source file problems; outdated list of distributed files.
+Solution: Small updates to source files and list of distributed files.
+
+Patch 9.0.1480
+Problem: Using popup menu may leave text in the command line.
+Solution: Clear the command line if the popup menu covered it. (Luuk van
+ Baal, closes #12286)
+
+Patch 9.0.1481
+Problem: Decrypting with libsodium may fail if the library changes.
+Solution: Add parameters used to the encrypted file header. (Christian
+ Brabandt, closes #12279)
+
+Patch 9.0.1482
+Problem: Crash when textprop has a very large "padding" value. (Yegappan
+ Lakshmanan)
+Solution: Avoid the "after" count to go negative.
+
+Patch 9.0.1483
+Problem: += operator does not work on class member.
+Solution: Do not skip as if "this." was used. (Christian Brabandt,
+ closes #12263)
+
+Patch 9.0.1484
+Problem: Coverity warns for using invalid array index.
+Solution: Add entry for Xchacha, even though it is not used.
+
+Patch 9.0.1485
+Problem: no functions for converting from/to UTF-16 index.
+Solution: Add UTF-16 flag to existing functions and add strutf16len() and
+ utf16idx(). (Yegappan Lakshmanan, closes #12216)
+
+Patch 9.0.1486
+Problem: Parallel make might not work.
+Solution: Add missing dependencies. (Samuel Dionne-Riel, closes #12288)
+
+Patch 9.0.1487
+Problem: Content-type header for LSP channel not according to spec.
+Solution: Use "vscode-jsonrpc" instead of "vim-jsonrpc". (Yegappan
+ Lakshmanan, closes #12295)
+
+Patch 9.0.1488
+Problem: xchacha20v2 crypt header is platform dependent.
+Solution: Avoid using "size_t". (Ozaki Kiichi, closes #12296)
+
+Patch 9.0.1489
+Problem: Crypt with libsodium is not tested on CI.
+Solution: Configure testing with libsodium. (Ozaki Kiichi, closes #12297)
+
+Patch 9.0.1490
+Problem: The ModeChanged event may be triggered too often.
+Solution: Only trigger ModeChanged when no operator is pending.
+ (closes #12298)
+
+Patch 9.0.1491
+Problem: Wrong scrolling with ls=0 and :botright split.
+Solution: Add statusline before calling frame_new_height(). (closes #12299)
+
+Patch 9.0.1492
+Problem: Using uninitialized memory when argument is missing.
+Solution: Check there are sufficient arguments before the base.
+ (closes #12302)
+
+Patch 9.0.1493
+Problem: Popup menu position wrong in window with toolbar.
+Solution: Take the window toolbar into account when positioning the popup
+ menu. (closes #12308)
+
+Patch 9.0.1494
+Problem: Crash when recovering from corrupted swap file.
+Solution: Bail out when the line index looks wrong. (closes #12276)
+
+Patch 9.0.1495
+Problem: GTK3: hiding the mouse pointer does not work. (Rory O’Kane)
+Solution: Set alpha level to zero. (Kenny Stauffer, closes #12293,
+ closes #3256)
+
+Patch 9.0.1496
+Problem: Test restoring register with wrong value.
+Solution: Correct name of variable. (closes #12310)
+
+Patch 9.0.1497
+Problem: The ruler percentage can't be localized.
+Solution: Use a string that can be translated. (Emir Sari, closes #12311)
+
+Patch 9.0.1498
+Problem: In a terminal window the cursor may jump around. (Kenny Stauffer)
+Solution: Do not move the cursor to the position for terminal-normal mode.
+ (closes #12312)
+
+Patch 9.0.1499
+Problem: Using uninitialized memory with fuzzy matching.
+Solution: Initialize the arrays used to store match positions.
+
+Patch 9.0.1500
+Problem: The falsy operator is not tested properly.
+Solution: Add a few more test cases. (closes #12319)
+
+Patch 9.0.1501
+Problem: Crash with nested :try and :throw in catch block.
+Solution: Jump to :endtry before returning from function. (closes #12245)
+
+Patch 9.0.1502
+Problem: No test for deleting the end of a long wrapped line.
+Solution: Add a test to check the right text is displayed. (Luuk van Baal,
+ closes #12318)
+
+Patch 9.0.1503
+Problem: Luau files are not recognized.
+Solution: Add a patter for Luau files. (Amaan Qureshi, closes #12317)
+
+Patch 9.0.1504
+Problem: No error when calling remote_startserver() with an empty string.
+Solution: Give an error for an empty string. (Hirohito Higashi,
+ closes #12327)
+
+Patch 9.0.1505
+Problem: Error when heredoc content looks like heredoc.
+Solution: Handle curly expressions. (closes #12325)
+
+Patch 9.0.1506
+Problem: Line number not displayed when using 'smoothscroll'.
+Solution: Adjust condition for showing the line number. (closes #12333)
+
+Patch 9.0.1507
+Problem: Assert message is confusing with boolean result. assert_inrange()
+ replaces message instead of adding it.
+Solution: Don't put quotes around expected boolean value. Append message
+ for assert_inrange(). (closes #12342, closes #12341)
+
+Patch 9.0.1508
+Problem: Catch does not work when lines are joined with a newline.
+Solution: Set "nextcmd" appropriately. (closes #12348)
+
+Patch 9.0.1509
+Problem: Error message lacks mentioning the erroneous argument.
+Solution: Specify the argument that the error is for.
+
+Patch 9.0.1510
+Problem: Misleading variable name for error message.
+Solution: Change "name" to "number". (closes #12345)
+
+Patch 9.0.1511
+Problem: Crash when using wrong arg types to assert_match().
+Solution: Check for NULL pointer. (closes #12349)
+
+Patch 9.0.1512
+Problem: Inserting lines when scrolling with 'smoothscroll' set.
+Solution: Adjust line height computation for w_skipcol. (Luuk van Baal,
+ closes #12350)
+
+Patch 9.0.1513
+Problem: Text scrolls unnecessarily when splitting and 'splitkeep' is not
+ "cursor".
+Solution: Avoid resetting w_skipcol. (Luuk van Baal, closes #12334)
+
+Patch 9.0.1514
+Problem: Test waits unnecessarily long before checking screendump.
+Solution: Remove TermWait() call.
+
+Patch 9.0.1515
+Problem: reverse() does not work for a String.
+Solution: Implement reverse() for a String. (Yegappan Lakshmanan,
+ closes #12179)
+
+Patch 9.0.1516
+Problem: Cannot use special keys in <Cmd> mapping.
+Solution: Do allow for special keys in <Cmd> and <ScriptCmd> mappings.
+ (closes #12326)
+
+Patch 9.0.1517
+Problem: MacOS: configure removes -O2 from $CFLAGS.
+Solution: Only adjust $CFLAGS for gcc. (closes #12351)
+
+Patch 9.0.1518
+Problem: Search stats not always visible when searching backwards.
+Solution: Do not display the top/bot message on top of the search stats.
+ (Christian Brabandt, closes #12322, closes #12222)
+
+Patch 9.0.1519
+Problem: Global 'filetype' is set when it is detected from the file content.
+Solution: Set the local 'filetype' option value.
+
+Patch 9.0.1520
+Problem: Completion for option name includes all bool options.
+Solution: Do not recognize the "noinv" prefix. Prefix "no" or "inv" when
+ appropriate.
+
+Patch 9.0.1521
+Problem: Failing redo of command with control characters.
+Solution: Use AppendToRedobuffLit() for colon commands. (closes #12354)
+
+Patch 9.0.1522
+Problem: Some functions give two error messages.
+Solution: Do not give a second error message. (closes #12352)
+
+Patch 9.0.1523
+Problem: Some error messages are not marked for translation.
+Solution: Surround the messages in _(). (closes #12356)
+
+Patch 9.0.1524
+Problem: Passing -1 for bool is not always rejected.
+Solution: Check for error in a better way. (closes #12358)
+
+Patch 9.0.1525
+Problem: 'smoothscroll' does not always work properly.
+Solution: Do not reset w_skipcol after it was intentionally set. (Luuk van
+ Baal, closes #12360, closes #12199, closes #12323)
+
+Patch 9.0.1526
+Problem: Condition is always true.
+Solution: Remove unnecessary condition. (closes #12359)
+
+Patch 9.0.1527
+Problem: Crash when using negative value for term_cols.
+Solution: Check for invalid term_cols value. (Kenta Sato, closes #12362)
+
+Patch 9.0.1528
+Problem: Libsodium encryption is only used with "huge" features, even when
+ manually enabled through configure. (Tony Mechelynck)
+Solution: Remove the condition on FEAT_HUGE.
+
+Patch 9.0.1529
+Problem: Code style test doesn't check for space after "if".
+Solution: Add a test for space.
+
+Patch 9.0.1530
+Problem: Cursor moves to wrong line when 'foldmethod' is "diff". (Rick
+ Howe)
+Solution: Adjust logic for scrolling. (Luuk van Baal, closes #12364,
+ closes #12218)
+
+Patch 9.0.1531
+Problem: Crash when register contents ends up being invalid.
+Solution: Check "y_array" is not NULL.
+
+Patch 9.0.1532
+Problem: Crash when expanding "~" in substitute causes very long text.
+Solution: Limit the text length to MAXCOL.
+
+Patch 9.0.1533
+Problem: Test for 'smoothscroll' is ineffective.
+Solution: Change the order of testing "zb" and "zt". (Luuk van Baal,
+ closes #12366)
+
+Patch 9.0.1534
+Problem: Test for expanding "~" in substitute takes too long.
+Solution: Disable the test for now.
+
+Patch 9.0.1535
+Problem: Test commented out in a wrong way.
+Solution: Use legacy script comment character.
+
+Patch 9.0.1536
+Problem: CI: sound dummy stopped working.
+Solution: Temporarily stop using sound dummy.
+
+Patch 9.0.1537
+Problem: Message for opening the cmdline window is not translated.
+Solution: Add gettext() and scan the defaults script for text to be
+ translated. (closes #12371)
+
+Patch 9.0.1538
+Problem: :wqall does not trigger ExitPre. (Bart Libert)
+Solution: Move preparations for :qall to a common function. (closes #12374)
+
+Patch 9.0.1539
+Problem: Typst filetype is not recognized.
+Solution: Distinguish between sql and typst. (Gaetan Lepage, closes #12363)
+
+Patch 9.0.1540
+Problem: reverse() on string doesn't work in compiled function.
+Solution: Accept string in argument type check. (Yegappan Lakshmanan,
+ closes #12377)
+
+Patch 9.0.1541
+Problem: CI: sound dummy is disabled.
+Solution: Make sound dummy work again. (closes #12380)
+
+Patch 9.0.1542
+Problem: Line not fully displayed if it doesn't fit in the screen.
+Solution: Do not reset s_skipcol if not needed. (Luuk van Baal,
+ closes #12376)
+
+Patch 9.0.1543
+Problem: Display errors when making topline shorter and 'smoothscroll' is
+ set.
+Solution: Reset w_skipcol when the topline becomes shorter than its current
+ value. (Luuk van Baal, closes #12367)
+
+Patch 9.0.1544
+Problem: Recent glibc marks sigset() as a deprecated.
+Solution: Use sigaction() in mch_signal() if possible. (Ozaki Kiichi,
+ closes #12373)
+
+Patch 9.0.1545
+Problem: Text not scrolled when cursor moved with "g0" and "h".
+Solution: Adjust w_skipcol when needed. (Luuk van Baal, closes #12387)
+
+Patch 9.0.1546
+Problem: Some commands for opening a file don't use 'switchbuf'.
+Solution: Use 'switchbuf' for more commands. (Yegappan Lakshmanan,
+ closes #12383, closes #12381)
+
+Patch 9.0.1547
+Problem: Coveralls workflow on CI is commented out.
+Solution: Remove the Coveralls workflow. (closes #12389)
+
+Patch 9.0.1548
+Problem: CI: check in sound-dummy module may throw an error.
+Solution: Check whether apt-cache can show the package description.
+ (Christian Brabandt, closes #12390)
+
+Patch 9.0.1549
+Problem: USD filetype is not recognized.
+Solution: Add patterns for USD filetype. (Colin Kennedy, closes #12370)
+
+Patch 9.0.1550
+Problem: In cmdline window S-Tab does not select previous completion.
+ (Maxim Kim)
+Solution: Add a mapping for S-Tab. (closes #12116)
+
+Patch 9.0.1551
+Problem: Position of marker for 'smoothscroll' not computed correctly.
+Solution: Take 'list' and other options into account. (Luuk van Baal,
+ closes #12393)
+
+Patch 9.0.1552
+Problem: CI: sound-dummy module is not installed.
+Solution: Invert using the result of the condition. (closes #12394)
+
+Patch 9.0.1553
+Problem: CI: using slightly outdated gcc version.
+Solution: Use "brew" to get a more recent gcc version. (closes #12391)
+
+Patch 9.0.1554
+Problem: Code for handling 'switchbuf' is repeated.
+Solution: Add a function to handle 'switchbuf'. (Yegappan Lakshmanan,
+ closes #12397)
+
+Patch 9.0.1555
+Problem: setcharsearch() does not clear last searched char properly.
+Solution: Do not accept lastc_bytelen smaller than one. (closes #12398)
+
+Patch 9.0.1556
+Problem: Vim9: error for missing "return" after "throw".
+Solution: Set had_return flag for "throw". (closes #12262)
+
+Patch 9.0.1557
+Problem: Test failures for unreachable code.
+Solution: Add a test override to ignore unreachable code.
+
+Patch 9.0.1558
+Problem: Wrong error for unreachable code after :throw.
+Solution: Adjust the error message.
+
+Patch 9.0.1559
+Problem: Function argument types not always checked and using v:none may
+ cause an error.
+Solution: Check argument types once the function type is known. Do not give
+ an error for using v:none as an argument. (closes #12200)
+
+Patch 9.0.1560
+Problem: Win32: When 'encoding' is set $PATH has duplicate entries.
+Solution: Only append the directory if it is not there yet. (Ken Takata,
+ closes #12400, closes #12372)
+
+Patch 9.0.1561
+Problem: Display wrong when moving cursor to above the top line and
+ 'smoothscroll' is set.
+Solution: Call adjust_skipcol() in more places and make it work better.
+ (Luuk van Baal, closes #12395)
+
+Patch 9.0.1562
+Problem: Mixing package managers is not a good idea.
+Solution: Install gcc 13 with apt-get. (closes #12405)
+
+Patch 9.0.1563
+Problem: GTK3: window manager resize hints are incomplete.
+Solution: Use NULL for second argument of gtk_window_set_geometry_hints().
+ (Kenny Stauffer closes #11055)
+
+Patch 9.0.1564
+Problem: Display moves up and down with 'incsearch' and 'smoothscroll'.
+Solution: Do not check if w_skipcol changed. (Luuk van Baal, closes #12410,
+ closes #12409)
+
+Patch 9.0.1565
+Problem: Json lines files are not recognized.
+Solution: Add a pattern to detect "jsonl" files. (issue #7520)
+
+Patch 9.0.1566
+Problem: Motif: GUI scrollbar test fails in 24 lines terminal.
+Solution: Skip the part of the test that fails for now.
+
+Patch 9.0.1567
+Problem: Profiler calculation may be wrong on 32 bit builds.
+Solution: Use 64 bit variable if possible. (Isao Sato, closes #12412)
+
+Patch 9.0.1568
+Problem: With 'smoothscroll' cursor may move below botline.
+Solution: Call redraw_later() if needed, Compute cursor row with adjusted
+ condition. (Luuk van Baal, closes #12415)
+
+Patch 9.0.1569
+Problem: Cannot use "this.member" in lambda in class method.
+Solution: Adjust check for reserved keyword. (Hirohito Higashi,
+ closes #12416, closes #12076, closes #12336)
+
+Patch 9.0.1570
+Problem: Some tests are slow.
+Solution: Make a few test cases faster.
+
+Patch 9.0.1571
+Problem: RedrawingDisabled not used consistently.
+Solution: Avoid RedrawingDisabled going negative. Set RedrawingDisabled in
+ win_split_ins(). (closes #11961)
+
+Patch 9.0.1572
+Problem: Error messages are not translated.
+Solution: Add _().
+
+Patch 9.0.1573
+Problem: Error for function name has wrong line number.
+Solution: Set the line number before giving the error.
+
+Patch 9.0.1574
+Problem: MS-Windows: list of translation input files incomplete.
+Solution: Move the list of files to a common file. (closes #12426)
+
+Patch 9.0.1575
+Problem: "file N of M" message is not translated.
+Solution: Make argument count message translatable. (close #12429)
+
+Patch 9.0.1576
+Problem: Users may not know what to do with an internal error.
+Solution: Add a translated message with instructions.
+
+Patch 9.0.1577
+Problem: MS-Windows: context menu translations may be wrong.
+Solution: Set the encoding before using gettext(). (Ken Takata,
+ closes #12441, closes #12431)
+
+Patch 9.0.1578
+Problem: SpellCap highlight not always updated when needed.
+Solution: Handle updating line below closed fold and other situations where
+ only part of the window is redrawn. (Luuk van Baal, closes #12428,
+ closes #12420)
+
+Patch 9.0.1579
+Problem: Some error messages are not translated.
+Solution: Add the N_() marker on messages. (closes #12427)
+
+Patch 9.0.1580
+Problem: CI: indent test hangs on FreeBSD.
+Solution: Set 'nomore' when running the indent tests. (Ozaki Kiichi,
+ closes #12446)
+
+Patch 9.0.1581
+Problem: Translation does not work for plural argument.
+Solution: Use PLURAL_MSG() for errors and with xgettext. (closes #12443)
+
+Patch 9.0.1582
+Problem: :stopinsert may not work in a popup close handler. (Ben Jackson)
+Solution: Restore stop_insert_mode when appropriate. (closes #12452,
+ closes #12434)
+
+Patch 9.0.1583
+Problem: Get E304 when using 'cryptmethod' "xchacha20v2". (Steve Mynott)
+Solution: Add 4th crypt method to block zero ID check. Avoid syncing a swap
+ file before reading the file. (closes #12433)
+
+Patch 9.0.1584
+Problem: Not all meson files are recognized.
+Solution: Add "meson.options". (Liam Beguin, closes #12444)
+
+Patch 9.0.1585
+Problem: Weird use of static variables for spell checking.
+Solution: Move the variables to a structure and pass them from win_update()
+ to win_line(). (Luuk van Baal, closes #12448)
+
+Patch 9.0.1586
+Problem: Checking translations gives an error for using two messages with
+ ngettext() that differ in "%" items.
+Solution: Adjust the check script to tolerate omitting one "%" item.
+
+Patch 9.0.1587
+Problem: Corn config files are not recognized.
+Solution: Add a pattern for Corn config files. (Jake Stanger, closes #12449)
+
+Patch 9.0.1588
+Problem: Incsearch not triggered when pasting clipboard register on the
+ command line.
+Solution: Also set "literally" when using a clipboard register. (Ken Takata,
+ closes #12460)
+
+Patch 9.0.1589
+Problem: Filetype test contains too many special characters.
+Solution: Use Vim9 syntax for a few things.
+
+Patch 9.0.1590
+Problem: Filetype test has trailing white space.
+Solution: Remove trailing white space.
+
+Patch 9.0.1591
+Problem: Some "gomod" files are not recognized.
+Solution: Check for "go.mod" file name before checking out the contents.
+ (Omar El Halabi, closes #12462)
+
+Patch 9.0.1592
+Problem: Not all timer tests are marked as flaky.
+Solution: Set the flaky flag for all timer tests. (closes #12355)
+
+Patch 9.0.1593
+Problem: MS-Windows: assert error when compiled with debug mode.
+Solution: Adjust arguments to setvbuf(). (Ken Takata, closes #12467)
+
+Patch 9.0.1594
+Problem: Some internal error messages are translated.
+Solution: Consistently do not translate internal error messages.
+ (closes #12459)
+
+Patch 9.0.1595
+Problem: Line pointer becomes invalid when using spell checking.
+Solution: Call ml_get() at the right places. (Luuk van Baal, closes #12456)
+
+Patch 9.0.1596
+Problem: :registers command does not work in sandbox.
+Solution: Add flag to the command. (closes #12473)
+
+Patch 9.0.1597
+Problem: Cursor ends up below the window after a put.
+Solution: Mark w_crow and w_botline invalid when changing the cursor line.
+ (closes #12465)
+
+Patch 9.0.1598
+Problem: screenchar(), screenchars() and screenstring() do not work
+ properly when 'encoding' is set to a double-byte encoding.
+Solution: Fix the way the bytes of the characters are obtained.
+ (issue #12469)
+
+Patch 9.0.1599
+Problem: Cursor not adjusted when near top or bottom of window and
+ 'splitkeep' is not "cursor".
+Solution: Move boundary checks to outer cursor move functions, inner
+ functions should only return valid cursor positions. (Luuk van
+ Baal, closes #12480)
+
+Patch 9.0.1600
+Problem: screenpos() does not take w_skipcol into account.
+Solution: Subtract w_skipcol from column. (closes #12486, closes #12476)
+
+Patch 9.0.1601
+Problem: Filetype detection fails for *.conf file without comments.
+ (Dmitrii Tcyganok)
+Solution: Use "conf" filetype as a fallback for an empty .conf file.
+ (closes #12487, closes #12483)
+
+Patch 9.0.1602
+Problem: Stray character is visible if 'smoothscroll' marker is displayed
+ on top of a double-wide character.
+Solution: When overwriting a double-width character with the 'smoothscroll'
+ marker clear the second half. (closes #12469)
+
+Patch 9.0.1603
+Problem: Display wrong when scrolling multiple lines with 'smoothscroll'
+ set.
+Solution: Redraw when w_skipcol changed. (closes #12477, closes #12468)
+
+Patch 9.0.1604
+Problem: Errors from the codestyle test are a bit confusing.
+Solution: Use assert_report() with a clearer message. Avoid a warning for
+ an existing swap file.
+
+Patch 9.0.1605
+Problem: Crash when calling method on super in child constructor. (Israel
+ Chauca Fuentes)
+Solution: Clear the type list. (Ernie Rael, closes #12489, closes #12471)
+
+Patch 9.0.1606
+Problem: Using freed memory when 'foldcolumn' is set.
+Solution: Save extra pointer to free it later. (closes #12492)
+
+Patch 9.0.1607
+Problem: screenpos() returns wrong row with diff filler lines.
+Solution: Only add filler lines when appropriate. Also don't add the
+ 'smoothscroll' marker when w_skipcol is zero. (closes #12485,
+ closes #12484)
+
+Patch 9.0.1608
+Problem: update_topline() is called twice.
+Solution: Do not call update_topline() before curs_columns(). (Luuk van
+ Baal, closes #12495)
+
+Patch 9.0.1609
+Problem: Crash when an object indirectly references itself.
+Solution: Avoid clearing an object while it is already being cleared.
+ (closes #12494)
+
+Patch 9.0.1610
+Problem: Display is wrong when 'smoothscroll' is set and scrolling multiple
+ lines.
+Solution: Redraw with UPD_NOT_VALID when "skipcol" is or was set.
+ (closes #12490, closes #12468)
+
+Patch 9.0.1611
+Problem: v:maxcol can be changed in a :for loop.
+Solution: Check for read-only loop variable. (closes #12470)
+
+Patch 9.0.1612
+Problem: "skipcol" not reset when using multi-byte characters.
+Solution: Compare with w_virtcol instead of w_cursor.col. (closes #12457)
+
+Patch 9.0.1613
+Problem: Some make output gets picked up by 'errorformat'.
+Solution: Ignore make output by default. (Gregory Anders, closes #12481)
+
+Patch 9.0.1614
+Problem: strlen() called too often for :spellrepall.
+Solution: Store the result in a variable. (closes #12497)
+
+Patch 9.0.1615
+Problem: URL shortcut files are not recognized.
+Solution: Add a pattern for URL shortcut files. (closes #12474)
+
+Patch 9.0.1616
+Problem: Quickfix text field is truncated.
+Solution: Fix output of text field after pattern field in quickfix buffer.
+ (Shane Harper, closes #12498)
+
+Patch 9.0.1617
+Problem: charidx() and utf16idx() result is not consistent with byteidx().
+Solution: When the index is equal to the length of the text return the
+ length of the text instead of -1. (Yegappan Lakshmanan,
+ closes #12503)
+
+Patch 9.0.1618
+Problem: Trace32 files are not recognized.
+Solution: Add patterns for the t32 filetype. (Christoph Sax, closes #12505)
+
+Patch 9.0.1619
+Problem: The focus gained/lost escape sequences cause trouble for a
+ terminal where Vim does not expect them.
+Solution: Always recognize the codes for focus gained/lost. (closes #12499)
+
+Patch 9.0.1620
+Problem: Nix files are not recognized from the hashbang line.
+Solution: Add a hashbang check. (issue #12507)
+
+Patch 9.0.1621
+Problem: FILETYPE_FILE is defined to the same value multiple times. Same
+ for a few similar macros.
+Solution: Define FILETYPE_FILE and others in feature.h only
+
+Patch 9.0.1622
+Problem: Filetype name t32 is a bit obscure.
+Solution: Rename t32 to trace32. (Christoph Sax, closes #12512)
+
+Patch 9.0.1623
+Problem: The program to filetype translation is not exported.
+Solution: Export Exe2filetype().
+
+Patch 9.0.1624
+Problem: Crash when calling object constructor from legacy script. (Israel
+ Chauca Fuentes)
+Solution: Pass a pointer for "ufunc". (closes #12502)
+
+Patch 9.0.1625
+Problem: "super" is not considered a reserved name.
+Solution: Add "super" to the list of reserved names. (closes #12515)
+
+Patch 9.0.1626
+Problem: Visual area not shown when using 'showbreak' and start of line is
+ not visible. (Jaehwang Jung)
+Solution: Adjust "fromcol" for the space taken by 'showbreak'.
+ (closes #12514)
+
+Patch 9.0.1627
+Problem: No generic mechanism to test syntax plugins.
+Solution: Add a syntax plugin test mechanism, using screendumps. Add a
+ simple test for "c".
+
+Patch 9.0.1628
+Problem: Syntax tests fail on FreeBSD.
+Solution: Pass the Vim executable path with VIMPROG. (Ken Takata,
+ closes #12535) Adjust the paths.
+
+Patch 9.0.1629
+Problem: Having utf16idx() rounding up is inconvenient.
+Solution: Make utf16idx() round down. (Yegappan Lakshmanan, closes #12523)
+
+Patch 9.0.1630
+Problem: "make clean" at the toplevel fails.
+Solution: Clean the indent and syntax directories in a sub-shell. (Ben
+ Jackson, closes #12536, closes #12526)
+
+Patch 9.0.1631
+Problem: Passing a wrong variable type to an option gives multiple errors.
+Solution: Bail out early on failure. (closes #12504)
+
+Patch 9.0.1632
+Problem: Not all cabal config files are recognized.
+Solution: Add a couple of patterns. (Marcin Szamotulski, closes #12463)
+
+Patch 9.0.1633
+Problem: Duplicate code for converting float to string.
+Solution: Use tv_get_string(). (closes #12521)
+
+Patch 9.0.1634
+Problem: Message is cleared when removing mode message (Gary Johnson).
+Solution: Do not clear the command line after displaying a message.
+
+Patch 9.0.1635
+Problem: Error message is cleared when removing mode message.
+Solution: Also reset flags when the message is further down.
+
+Patch 9.0.1636
+Problem: Expanding a pattern interferes with command line completion.
+Solution: Set the file index only when appropriate. (closes #12519)
+
+Patch 9.0.1637
+Problem: Compiler warning for uninitialized variable.
+Solution: Move the variable to an inner block and initialize it. (Christian
+ Brabandt, closes #12549)
+
+Patch 9.0.1638
+Problem: crypt tests hang and cause memory errors
+Solution: Move variable to start of function.
+
+Patch 9.0.1639
+Problem: Build failure without the crypt feature.
+Solution: Adjust #ifdefs
+
+Patch 9.0.1640
+Problem: Compiler warning for unused variables without the crypt feature.
+Solution: Adjust #ifdefs
+
+Patch 9.0.1641
+Problem: The log file does not give information about window sizes.
+Solution: Add a few log messages about obtaining the window size.
+
+Patch 9.0.1642
+Problem: Build failure with tiny features.
+Solution: Add #ifdef's.
+
+Patch 9.0.1643
+Problem: Filetype detection fails if file name ends in many '~'.
+Solution: Strip multiple '~' at the same time. (closes #12553)
+
+Patch 9.0.1644
+Problem: Not all filetype file name matches are tested.
+Solution: Add more file names to test with. (Jonas Strittmatter,
+ closes #12569)
+
+Patch 9.0.1645
+Problem: zserio files are not recognized.
+Solution: Add a pattern for zserio files. (Dominique Pellé,
+ closes #12544)
+
+Patch 9.0.1646
+Problem: CI: codecov may take a very long time to run.
+Solution: Add a timeout. (Philip Heiduck, closes #12559)
+
+Patch 9.0.1647
+Problem: Insufficient testing for syntax plugins.
+Solution: Add shell file examples. (Charles Campbell) Create a messages
+ file for easier debugging and reporting the test results.
+
+Patch 9.0.1648
+Problem: Result of syntax tests is hard to see.
+Solution: List the failed tests.
+
+Patch 9.0.1649
+Problem: Syntax test failure causes script to abort.
+Solution: Fix appending string to list.
+
+Patch 9.0.1650
+Problem: MS-Windows: default 'viewdir' may include read-only directory.
+Solution: Use $HOME instead of $VIM for 'viewdir' default. (closes #12119)
+
+Patch 9.0.1651
+Problem: Unclear why syntax test fails on Mac.
+Solution: Temporarily show the whole "messages" file.
+
+Patch 9.0.1652
+Problem: Unclear why syntax test fails on Mac.
+Solution: Echo v:errors when it's not empty.
+
+Patch 9.0.1653
+Problem: Amiga: default 'viewdir' may not work.
+Solution: Use "home:" instead of "$VIM". Add a test. (Christian Brabandt,
+ closes #12576)
+
+Patch 9.0.1654
+Problem: MS-Windows: test for default 'viewdir' fails.
+Solution: Escape the pattern.
+
+Patch 9.0.1655
+Problem: Syntax test fails when Vim window is not tall enough.
+Solution: Make sure each terminal window is closed.
+
+Patch 9.0.1656
+Problem: Syntax test fails when detected shell type differs.
+Solution: Avoid using "/bin/sh", it depends on the system. Add a check that
+ the shell type detection is correct.
+
+Patch 9.0.1657
+Problem: One more syntax test depends on the system.
+Solution: Use "dash" instead of "sh".
+
+Patch 9.0.1658
+Problem: Autoload files for "zig" are not installed.
+Solution: Add install and uninstall rules in the makefile. (Christian
+ Brabandt, closes #12577, closes #12567)
+
+Patch 9.0.1659
+Problem: Termdebug: default highlight cleared when changing colorscheme.
+Solution: Use a ColorScheme autocommand. (Christian Brabandt, closes #12566,
+ closes #12555)
+
+Patch 9.0.1660
+Problem: Error for using matchfuzzy() in Vim9 script returning a list of
+ dicts.
+Solution: Make return type of matchfuzzy() list<any>. (Yegappan Lakshmanan,
+ closes #12574)
+
+Patch 9.0.1661
+Problem: BUCK files are not recognized.
+Solution: Recognize BUCK files as "bzl". (Son Luong Ngoc, closes #12564)
+
+Patch 9.0.1662
+Problem: Crash when using a class member twice. (Christian J. Robinson)
+Solution: Make a copy of the value.
+
+Patch 9.0.1663
+Problem: Termdebug on MS-Windows: some file names are not recognized.
+Solution: Do not always change \t and \n. (Christian Brabandt,
+ closes #12565, closes #12560, closes #12550)
+
+Patch 9.0.1664
+Problem: Divide by zero when scrolling with 'smoothscroll' set.
+Solution: Avoid using a negative width. (closes #12540, closes #12528)
+
+Patch 9.0.1665
+Problem: Empty CmdlineEnter autocommand causes errors in Ex mode.
+Solution: Save and restore ex_pressedreturn. (Christian Brabandt,
+ closes # 12581, closes #12578)
+
+Patch 9.0.1666
+Problem: Compiler may warn for uninitialized variable.
+Solution: Initialize this_props_len. (Christian Brabandt, closes #12599)
+
+Patch 9.0.1667
+Problem: Regression test doesn't fail when fix is reverted.
+Solution: Add "n" to 'cpoptions' instead of using :winsize. (closes #12587,
+ issue #12528)
+
+Patch 9.0.1668
+Problem: PEM files are not recognized.
+Solution: Add patterns to match PEM files. (closes #12582)
+
+Patch 9.0.1669
+Problem: Crash syncing swapfile in new buffer when using sodium crypt.
+ (James McCoy)
+Solution: Add checks for sodium encryption. (Christian Brabandt,
+ closes #12591, closes #12585)
+
+Patch 9.0.1670
+Problem: Resetting local option to global value is inconsistent.
+Solution: Handle "<" specifically for 'scrolloff' and 'sidescrolloff'.
+ (closes #12594)
+
+Patch 9.0.1671
+Problem: Termdebug: error with more than 99 breakpoints.
+Solution: Use a different sign for breakpoint 100 and over. (closes #12589,
+ closes #12588)
+
+Patch 9.0.1672
+Problem: Tabline highlight wrong after truncated double width label.
+Solution: Fill up half a double width character later. (closes #12614)
+
+Patch 9.0.1673
+Problem: Cannot produce a status 418 or 503 message.
+Solution: Add err_teapot().
+
+Patch 9.0.1674
+Problem: Help for builtin functions is not sorted properly.
+Solution: Put err_teapot() help in the right position.
+
+Patch 9.0.1675
+Problem: Test may run into timeout when using valgrind.
+Solution: Use a longer timeout when using valgrind.
+
+Patch 9.0.1676
+Problem: Warning for buffer in use when exiting early.
+Solution: Change file names to be able to see what buffer is in use when
+ exiting.
+
+Patch 9.0.1677
+Problem: Typo in syntax test input file.
+Solution: Fix the typo and the expected dump files. (THARAK HEGDE,
+ closes #12635)
+
+Patch 9.0.1678
+Problem: Blade files are not recognized.
+Solution: Add a pattern for Blade files. (closes #12650)
+
+Patch 9.0.1679
+Problem: Tests may leave leftover files around
+Solution: Clean up tests and remove files
+
+Patch 9.0.1680
+Problem: sodium test fails in Github CI
+Solution: Catch sodium_mlock() errors and do not error out
+
+Patch 9.0.1681
+Problem: Build Failure with Perl 5.38
+Solution: Fix Build Failure
+
+Patch 9.0.1682
+Problem: crypt: sodium encryption is not portable
+Solution: use little-endian byte order for sodium encrypted files
+
+Patch 9.0.1683
+Problem: need runtime files updated
+Solution: merge various github PRs
+
+Patch 9.0.1684
+Problem: libvterm slightly outdated
+Solution: Update libvterm from rev 818 to rev 839
+
+Patch 9.0.1685
+Problem: Python 3.11 interface throws deprecation warnings
+Solution: ignore those warnings for gcc and clang
+
+Patch 9.0.1686
+Problem: undotree() only works for the current buffer
+Solution: Add an optional "buffer number" parameter to undotree(). If
+ omitted, use the current buffer for backwards compatibility.
+
+Patch 9.0.1687
+Problem: mapset() not properly handling script ID
+Solution: replace_termcodes() may accept a script ID
+
+Patch 9.0.1688
+Problem: cannot store custom data in quickfix list
+Solution: add `user_data` field for the quickfix list
+
+Patch 9.0.1689
+Problem: python 3.12 produces warnings and fails test
+Solution: Make use of raw strings in python3 tests
+
+Patch 9.0.1690
+Problem: popup_create() not aborting on errors
+Solution: check for errors in arguments given and abort if an error
+ occurred
+
+Patch 9.0.1691
+Problem: wrong viewport restored for incsearch and smoothscroll
+Solution: Save and restore skipcol as well
+
+Patch 9.0.1692
+Problem: Android not handling AI_V4MAPPED ai_flag
+Solution: don't set AI_V4MAPPED flag when on Android, since
+ Android's getaddrinfo returns EAI_BADFLAGS if ai_flags
+ contains it
+
+Patch 9.0.1693
+Problem: Ctrl-Q not handled like Ctrl-V in replace mode
+Solution: Handle Ctrl-Q like Ctrl-V
+
+Patch 9.0.1694
+Problem: wrong mapping applied when replaying a char search
+Solution: Store a NOP after the ESC
+
+Patch 9.0.1695
+Problem: Crash with overlong textprop above
+Solution: Consider only positive padding
+
+Patch 9.0.1696
+Problem: sodium_mlock may still fail in CI
+Solution: Catch E1230 in testscript and skip test
+
+Patch 9.0.1697
+Problem: incsearch test not sufficient (after 9.0.1691)
+Solution: add an additional test
+
+Patch 9.0.1698
+Problem: Test_map_restore_sid fails in GUI
+Solution: Feed an unsimplified Ctrl-B
+
+Patch 9.0.1699
+Problem: compile warning for xdiff/xutils on MS-Windows
+Solution: add explicit type cast from size_t to long
+
+Patch 9.0.1700
+Problem: Cannot compile with dynamic perl < 5.38 (after 9.0.1681)
+Solution: Fix if_perl/dyn from perl 5.32 to 5.38
+
+Patch 9.0.1701
+Problem: vim9 crash when class member overridden
+Solution: Use method_count field instead
+
+Patch 9.0.1702
+Problem: Undo test is flaky.
+Solution: Apply filter and change time to "1 second ago" in both dumps.
+
+Patch 9.0.1703
+Problem: Vim9 Calling a method in an extended class fails
+Solution: use method index directly
+
+Patch 9.0.1704
+Problem: Cannot use positional arguments for printf()
+Solution: Support positional arguments in string formatting
+
+Patch 9.0.1705
+Problem: cursor position wrong when clicking on an unprintable char
+Solution: Don't update prev_ptr when wlv.n_extra is not zero.
+
+Patch 9.0.1706
+Problem: typos in the xxd manpage
+Solution: Fix typos and formatting
+
+Patch 9.0.1707
+Problem: Cannot wrap around in popup_filter_menu()
+Solution: Allow to wrap around by default
+
+Patch 9.0.1708
+Problem: getcompletion() fails for user-defined commands
+Solution: set context for completion function
+
+Patch 9.0.1709
+Problem: dynamic build with python 3.12 breaks
+Solution: if_python3.c: Fix building dynamic Python3 interpreter
+
+Patch 9.0.1710
+Problem: sidescrolloff and scrolloff options work slightly
+ different than other global-local options
+Solution: Make it behave consistent for all global-local options
+
+Patch 9.0.1711
+Problem: dead code in charset.c
+Solution: remove it
+
+Patch 9.0.1712
+Problem: missing null check in object_clear()
+Solution: Add null check of cl
+
+Patch 9.0.1713
+Problem: Github CI fails to load snd-dummy kernel module
+Solution: Make installation of linux-modules-extra optional
+
+Patch 9.0.1714
+Problem: getcompletion() "cmdline" fails after :autocmd
+Solution: Use set_cmd_context() instead of set_one_cmd_context().
+
+Patch 9.0.1715
+Problem: duplicate test in message_test.c
+Solution: Remove duplicate test and make functions static
+
+Patch 9.0.1716
+Problem: Windows build with python 3.12 and clang fails
+Solution: Remove the PyBool_Type function pointer for python 3.12
+
+Patch 9.0.1717
+Problem: virtcol2col returns last byte of a multi-byte char
+Solution: Make it return the first byte for a multi-byte char
+
+Patch 9.0.1718
+Problem: dict-completion does not respect region
+Solution: respect selected region in dict completion
+
+Patch 9.0.1719
+Problem: if_lua: crash for Lua functions invoked via Vim callbacks
+Solution: Use Lua registry rather than upvalues for udata cache
+
+Patch 9.0.1720
+Problem: Vim9 class using wrong index for overridden method
+Solution: Use correct index for overridden method
+
+Patch 9.0.1721
+Problem: Build failure on Windows with dynamic lua (after 9.0.1719)
+Solution: move definition further down in if_lua
+
+Patch 9.0.1722
+Problem: wrong error messages when passing wrong types to count()
+Solution: fix it
+
+Patch 9.0.1723
+Problem: Fix regression in {func} argument of reduce()
+Solution: pass function name as string again
+
+Patch 9.0.1724
+Problem: vim9class constructor argument type checking bug
+Solution: fix it
+
+Patch 9.0.1725
+Problem: Wrong cursor position when clicking after concealed text
+ with 'virtualedit'.
+Solution: Store virtual columns in ScreenCols[] instead of text
+ columns, and always use coladvance() when clicking.
+
+Patch 9.0.1726
+Problem: incorrect heights in win_size_restore()
+Solution: avoid restoring incorrect heights in win_size_restore()
+
+Patch 9.0.1727
+Problem: minor problems with the teapot()
+Solution: remove the null check, update documentation
+
+Patch 9.0.1728
+Problem: missing winid argument for virtcol()
+Solution: Add a {winid} argument to virtcol()
+
+Patch 9.0.1729
+Problem: screenpos() wrong result with w_skipcol and cpoptions+=n
+Solution: Use adjust_plines_for_skipcol() instead of subtracting
+ w_skipcol.
+
+Patch 9.0.1730
+Problem: passing multiple patterns to runtime not working
+Solution: prepend prefix to each argument separately
+
+Patch 9.0.1731
+Problem: blockwise Visual highlight not working with virtual text
+Solution: Reset the correct variable at the end of virtual selection and
+ Check for double-width char inside virtual text.
+
+Patch 9.0.1732
+Problem: vimexpr: shadowing variable
+Solution: Rename local variable
+
+Patch 9.0.1733
+Problem: CI: cannot cache linux-modules-extra
+Solution: Enable caching and reduce failed downloads
+
+Patch 9.0.1734
+Problem: runtime completion fails for multiple args
+Solution: Make it work
+
+Patch 9.0.1735
+Problem: Rename completion specific findex var
+Solution: Move "findex" static variable to xp_selected in expand_T
+
+Patch 9.0.1736
+Problem: Github Actions times out after 20 minutes
+Solution: Increase the timeout to 25 minutes
+
+Patch 9.0.1737
+Problem: Calling a base class method through an extended class fails
+Solution: Create lookup table for member index in the interface to
+ to the member class implementing the interface
+
+Patch 9.0.1738
+Problem: Duplicate code to reverse a string
+Solution: Move reverse_text() to strings.c and remove string_reverse().
+
+Patch 9.0.1739
+Problem: leftover files in libvterm
+Solution: Fix cleaning of libvterm directory
+
+Patch 9.0.1740
+Problem: segfault when reading invalid viminfo file
+Solution: Check the expected type in the viminfo file
+
+Patch 9.0.1741
+Problem: No type checking in interfaces
+Solution: Implement member type check in vim9 interfaces
+
+Patch 9.0.1742
+Problem: Wrong curswant when clicking and the second cell of a
+ double-width char.
+Solution: Don't copy virtcol of the first char to the second one.
+
+Patch 9.0.1743
+Problem: Parameter of gui_gtk:gui_mch_browse incorrectly marked as
+ UNUSED.
+Solution: Remove UNUSED flag.
+
+Patch 9.0.1744
+Problem: Dead code in open_cmdwin()
+Solution: Remove it
+
+Patch 9.0.1745
+Problem: Missing test coverage for blockwise Visual highlight with
+ virtual that starts with a double-width char.
+Solution: Add a new virtual text to the test. Some other small fixes.
+
+Patch 9.0.1746
+Problem: vim9class compile error for char/char_u conversion
+Solution: Correctly cast to (char *)
+
+Patch 9.0.1747
+Problem: screenpos() may cause unnecessary redraw.
+Solution: Don't unnecessarily reset VALID_WROW flag.
+
+Patch 9.0.1748
+Problem: CI: cannot label issues automatically
+Solution: Create CI labeler
+
+Patch 9.0.1749
+Problem: Text property highlight doesn't override a sign highlight over
+ a tab character
+Solution: Let text_property override tab highlighting
+
+Patch 9.0.1750
+Problem: CI: fails because of changed error messages
+ (after: 9.0.1741)
+Solution: Adjust expected error messages
+
+Patch 9.0.1751
+Problem: CI: labeler configuration not found
+ (after 9.0.1748)
+Solution: set configuration path
+
+Patch 9.0.1752
+Problem: CI: Coveralls is no longer used
+Solution: Remove .coveralls.yml
+
+Patch 9.0.1753
+Problem: can't move to last non-blank char
+Solution: Make g<end> behave like that
+
+Patch 9.0.1754
+Problem: still ci breakage (after 9.0.1741)
+Solution: fix remaining issue
+
+Patch 9.0.1755
+Problem: CI still fails with sodium mlock error
+Solution: catch mlock failure
+
+Patch 9.0.1756
+Problem: failing cursorline sign test
+Solution: only reset char attr, if cursorline
+ option is not set
+
+Patch 9.0.1757
+Problem: ex_class() function is too long
+Solution: refactor it
+
+Patch 9.0.1758
+Problem: vim9 no class identifiers in stack dumps
+Solution: Prefix class members in stack traces with the class name
+ followed by a dot.
+
+Patch 9.0.1759
+Problem: Visual highlight not working with cursor at end of screen line
+ and 'showbreak'.
+Solution: Only update "vcol_prev" when drawing buffer text.
+
+Patch 9.0.1760
+Problem: vim9 class problem with new() constructor
+Solution: Don't allow a return type for the new() class constructor.
+
+Patch 9.0.1761
+Problem: g<kEnd> behaves different from g<end>
+Solution: Make g<kEnd> behave like g<End>
+
+Patch 9.0.1762
+Problem: Not able to get the virtual text property
+Solution: Make prop_list() return virtual text and alignment
+
+Patch 9.0.1763
+Problem: crash when passing invalid buffer to undotree()
+Solution: Use get_buf_arg() instead of tv_get_buf_from_arg().
+
+Patch 9.0.1764
+Problem: CI: label should not be set on all yml files
+Solution: only set it for specific yml files in .github
+
+Patch 9.0.1765
+Problem: Error when cross-compiling Vim
+Solution: use AC_CHECK_SIZEOF to find sizeof(wchar_t)
+
+Patch 9.0.1766
+Problem: Runtime: Missing QML support
+Solution: Add QML support to Vim
+
+Patch 9.0.1767
+Problem: '.-' no allowed in highlight group names
+Solution: Allow dot and hyphen characters in highlight group names
+
+Patch 9.0.1768
+Problem: Runtime: no support for bicep files
+Solution: Add filetype support for bicepparam
+
+Patch 9.0.1769
+Problem: executable() ignoring symlinks on Windows
+Solution: resolve reparse points
+
+Patch 9.0.1770
+Problem: lines disappear when modifying chars before virt text
+Solution: take virtual text property length into account
+
+Patch 9.0.1771
+Problem: regex: combining chars in collections not handled
+Solution: Check for following combining characters for NFA and BT engine
+
+Patch 9.0.1772
+Problem: Cursor is adjusted in window that did not change in size by
+ 'splitkeep'.
+Solution: Only check that cursor position is valid in a window that
+ has changed in size.
+
+Patch 9.0.1773
+Problem: cannot distinguish Forth and Fortran *.f files
+Solution: Add Filetype detection Code
+
+Patch 9.0.1774
+Problem: no support for custom cmdline completion
+Solution: Add new vimscript functions
+
+Patch 9.0.1775
+Problem: Wrong comparison in vim9type.c
+Solution: Change condition to false
+
+Patch 9.0.1776
+Problem: No support for stable Python 3 ABI
+Solution: Support Python 3 stable ABI
+
+Patch 9.0.1777
+Problem: patch 9.0.1771 causes problems
+Solution: revert it
+
+Patch 9.0.1778
+Problem: if_py_both: code-style issue
+Solution: add space
+
+Patch 9.0.1779
+Problem: Need more state() tests
+Solution: Add a few more tests for operator pending mode and register
+ yank command
+
+Patch 9.0.1780
+Problem: Vim9 type not defined during object creation
+Solution: Define type during object creation and not during class
+ definition, parse multi-line member initializers, fix lock
+ initialization
+
+Patch 9.0.1781
+Problem: Problems when setting bin/paste option
+Solution: When setting binary/paste, remember that this also affects
+ depending options, so that :verbose set returns the right
+ location.
+
+Patch 9.0.1782
+Problem: prop_list() does not return text_padding_left
+Solution: Store and return the text_padding_left value for text
+ properties
+
+Patch 9.0.1783
+Problem: Wrong display with wrapping virtual text or unprintable chars,
+ 'showbreak' and 'smoothscroll'.
+Solution: Don't skip cells taken by 'showbreak' in screen lines before
+ "w_skipcol". Combined "n_skip" and "skip_cells".
+
+Patch 9.0.1784
+Problem: redundant else in pum_set_selected()
+Solution: Remove it
+
+Patch 9.0.1785
+Problem: wrong cursor position with 'showbreak' and lcs-eol
+Solution: Add size of 'showbreak' before when 'listchars' "eol" is used.
+ Also fix wrong cursor position with wrapping virtual text on
+ empty line and 'showbreak'.
+
+Patch 9.0.1786
+Problem: Vim9: need instanceof() function
+Solution: Implement instanceof() builtin
+
+Patch 9.0.1787
+Problem: Cannot build with latest luajit
+Solution: adjust sed regexp and don't expect '-' in version output
+
+Patch 9.0.1788
+Problem: C4090 warnings in strings.c
+Solution: Add type casts
+
+Patch 9.0.1789
+Problem: too early declaration of variable in pum_set_selected()
+Solution: Move declaration to where it is actually used
+
+Patch 9.0.1790
+Problem: The Content-Type header is an optional header that some LSP
+ servers struggle with and may crash when encountering it.
+Solution: Drop the Content-Type header from all messages, because we use
+ the default value anyway.
+
+Patch 9.0.1791
+Problem: No tests for the Termdebug plugin
+Solution: Add some simple tests for the Termdebug plugin
+
+Patch 9.0.1792
+Problem: Normal mode "gM", "gj", "gk" commands behave incorrectly with
+ virtual text.
+Solution: Use linetabsize() instead of linetabsize_str().
+
+Patch 9.0.1793
+Problem: obsolete macros in configure script
+Solution: Remove those and start moving to autoconf 2.71
+
+Patch 9.0.1794
+Problem: autoconf: not correctly detecting include dirs
+Solution: make use of python3 to generate includedirs
+
+Patch 9.0.1795
+Problem: Indentation issues
+Solution: Fix code indentation issues.
+
+Patch 9.0.1796
+Problem: Vim9 problems with null_objects
+Solution: Vim9 improve null_object usage
+
+Patch 9.0.1797
+Problem: Vimball/Visual Basic filetype detection conflict
+Solution: runtime(vb): Improve Vimball and Visual Basic detection logic
+
+Patch 9.0.1798
+Problem: The 'syntax' option has no completion.
+Solution: Add syntax option completion.
+
+Patch 9.0.1799
+Problem: Russian menu translation can be improved
+Solution: update the Russian menu files
+
+Patch 9.0.1800
+Problem: Cursor position still wrong with 'showbreak' and virtual text
+ after last character or 'listchars' "eol".
+Solution: Remove unnecessary w_wcol adjustment in curs_columns(). Also
+ fix first char of virtual text not shown at the start of a screen
+ line.
+
+Patch 9.0.1801
+Problem: Vim9 instanceof() fails in a def func
+Solution: allow Objects in compile time check
+
+Patch 9.0.1802
+Problem: Multiline regex with Visual selection fails when Visual
+ selection contains virtual text after last char.
+Solution: Only include virtual text after last char when getting full
+ line length.
+
+Patch 9.0.1803
+Problem: Cannot detect norg markup files
+Solution: Add norg markup language detection
+
+Patch 9.0.1804
+Problem: Vim9: no support for private object methods
+Solution: Add support for private object/class methods
+
+Patch 9.0.1805
+Problem: Vim9: problem compiling object method as function call arg
+Solution: After a object/class method call, remove the object/class from
+ the stack.
+
+Patch 9.0.1806
+Problem: Vim9: bogus error on export
+Solution: Don't error out when the export command is not executed
+
+Patch 9.0.1807
+Problem: runtime: crystal scripts not recognised
+Solution: Filetype detect Crystal scripts by shebang line
+
+Patch 9.0.1808
+Problem: Termdebug: Typo in Termdebug test
+Solution: fix the typos
+
+Patch 9.0.1809
+Problem: Termdebug test flaky
+Solution: wait slightly longer
+
+Patch 9.0.1810
+Problem: camel-case spelling has issues with digits
+Solution: Improve the camCase spell checking by taking digits
+ and caps into account
+
+Patch 9.0.1811
+Problem: still some issues with term_debug test
+Solution: Use WaitForAssert()
+
+Patch 9.0.1812
+Problem: CI still fails with sodium_mlock error()
+Solution: Catch and ignore E1230 error in test_crypt
+
+Patch 9.0.1813
+Problem: 'linebreak' is incorrectly drawn after 'breakindent'.
+Solution: Don't include 'breakindent' size when already after it.
+
+Patch 9.0.1814
+Problem: Vim9 no error on duplicate object member var
+Solution: detect duplicate members and error out
+
+Patch 9.0.1815
+Problem: pango_coverage_unref() deprecated in pango > 1.51
+Solution: use g_object_unref() instead
+
+Patch 9.0.1816
+Problem: configure: sed uses non-portable regex
+Solution: use '*' modifier instead of '\?' in regex
+ for luajit version detection
+
+Patch 9.0.1817
+Problem: configure: using obsolete AC_HEADER_STDC
+Solution: Remove it and re-create configure
+
+Patch 9.0.1818
+Problem: dynamically linking perl is broken
+Solution: Fix all issues
+
+Patch 9.0.1819
+Problem: Github CI too complex
+Solution: CI: Tidy up matrix
+
+Patch 9.0.1820
+Problem: Rexx files may not be recognised
+Solution: Add shebang detection and improve disambiguation of *.cls
+ files
+
+Patch 9.0.1821
+Problem: Vim9 constructors are always static
+Solution: make the "static" keyword an error
+
+Patch 9.0.1822
+Problem: Vim9: no check for duplicate members in extended classes
+Solution: Check for duplicate members in extended classes.
+ Fix memory leak.
+
+Patch 9.0.1823
+Problem: Autoconf 2.69 too old
+Solution: Migrate to Autoconf 2.71
+
+Patch 9.0.1824
+Problem: Vim9: private members may be modifiable
+Solution: prevent modification for def function
+
+Patch 9.0.1825
+Problem: Wrong cursor position with virtual text before a whitespace
+ character and 'linebreak'.
+Solution: Always set "col_adj" to "size - 1" and apply 'linebreak' after
+ adding the size of 'breakindent' and 'showbreak'.
+
+Patch 9.0.1826
+Problem: keytrans() doesn't translate recorded key typed in a GUI
+Solution: Handle CSI like K_SPECIAL, like in mb_unescape()
+
+Patch 9.0.1827
+Problem: xxd: no color support
+Solution: Add color support using xxd -R
+
+Patch 9.0.1828
+Problem: Wrong cursor position with virtual text before double-width
+ char at window edge.
+Solution: Check for double-width char before adding virtual text size.
+
+Patch 9.0.1829
+Problem: Vim9 missing access-checks for private vars
+Solution: Use the proper check for private/readonly variable. Access
+ level for a member cannot be changed in a class implementing an
+ interface. Update the code indentation
+
+Patch 9.0.1830
+Problem: Vim9: crash when accessing a null object
+Solution: Check accessing a NULL object in def function
+
+Patch 9.0.1831
+Problem: Vim9: failing null test
+Solution: Use required public keyword
+
+Patch 9.0.1832
+Problem: xxd: reporting wrong version (after 9.0.1827)
+Solution: Update version string
+
+Patch 9.0.1833
+Problem: runtime files may execute code in current dir
+Solution: only execute, if not run from current directory
+
+Patch 9.0.1834
+Problem: Some problems with xxd coloring
+Solution: Fix the following problems:
+
+Patch 9.0.1835
+Problem: Perl interface has problems with load PL_current_context
+Solution: Fix Perl interface to load PL_current_context from library
+
+Patch 9.0.1836
+Problem: Wrong display with "above" virtual text and 'linebreak' or
+ 'breakindent' and 'showbreak'.
+Solution: Exclude size of "above" virtual text when calculating them.
+
+Patch 9.0.1837
+Problem: Vim9: class_member_type() can be optimized
+Solution: class_member_type() provides more information;
+ safe an additional alloc()/free()
+
+Patch 9.0.1838
+Problem: Vim9: Cannot modify class member vars from def function
+Solution: Add support for modifying class member variables from a def
+ function
+
+Patch 9.0.1839
+Problem: No Makefile rule to build cscope database
+Solution: Add rule
+
+Patch 9.0.1840
+Problem: use-after-free in do_ecmd
+Solution: Verify oldwin pointer after reset_VIsual()
+
+Patch 9.0.1841
+Problem: style: trailing whitespace in ex_cmds.c
+Solution: remove it
+
+Patch 9.0.1842
+Problem: Need more accurate profiling
+Solution: Improve profiling results
+
+Patch 9.0.1843
+Problem: xxd color test flaky
+Solution: Filter unneeded lines
+
+Patch 9.0.1844
+Problem: doc helptags may not be up to date
+Solution: Add CI jobs to verify helptags are updated
+
+Patch 9.0.1845
+Problem: xxd: Test_xxd_color start failing
+Solution: Revert changes to dump file
+
+Patch 9.0.1846
+Problem: crash in fullcommand
+Solution: Check for typeval correctly
+
+Patch 9.0.1847
+Problem: potential oob write in do_addsub()
+Solution: don't overflow buf2, check size in for loop()
+
+Patch 9.0.1848
+Problem: buffer-overflow in vim_regsub_both()
+Solution: Check remaining space
+
+Patch 9.0.1849
+Problem: CI error on different signedness
+Solution: cast unsigned to int
+
+Patch 9.0.1850
+Problem: Vim9: wrong line number where options set
+Solution: Set source line number earlier
+
+Patch 9.0.1851
+Problem: Virtual text at a column causes 'breakindent' and 'showbreak'
+ to be missing (after patch 9.0.1124).
+Solution: Add check for "tp_col" in another place where TP_FLAG_WRAP is
+ checked.
+
+Patch 9.0.1852
+Problem: i_CTRL-O does not reset Select Mode
+Solution: Reset select mode on CTRL-O in insert mode
+
+Patch 9.0.1853
+Problem: CI error on different signedness in regexp.c
+ (after patch 9.0.1848)
+Solution: Cast strlen() call to int
+
+Patch 9.0.1854
+Problem: test_crash1() fails on CI
+Solution: don't run Screendump test, verify that it doesn't crash
+ by running it through a shell command line, testing
+ the exit value and concatenating success cmd using '&&'
+
+Patch 9.0.1855
+Problem: mode() doesn't indicate command line for terminal
+Solution: make it return 'ct' for command-line from Terminal mode
+
+Patch 9.0.1856
+Problem: issues with formatting positional arguments
+Solution: fix them, add tests and documentation
+
+Patch 9.0.1857
+Problem: heap-use-after-free in is_qf_win()
+Solution: Check buffer is valid before accessing it
+
+Patch 9.0.1858
+Problem: heap use after free in ins_compl_get_exp()
+Solution: validate buffer before accessing it
+
+Patch 9.0.1859
+Problem: heap-use-after-free in bt_normal()
+Solution: check that buffer is still valid
+
+Patch 9.0.1860
+Problem: CI: test_crash1() is flaky
+Solution: Wait a bit longer
+
+Patch 9.0.1861
+Problem: xxd: issue when -R is specified several times
+Solution: Fix command line parsing
+
+Patch 9.0.1862
+Problem: Vim9 Garbage Collection issues
+Solution: Class members are garbage collected early leading to
+ use-after-free problems. Handle the garbage
+ collection of classes properly.
+
+Patch 9.0.1863
+Problem: wrong format specifiers in e_aptypes_is_null_str_nr
+Solution: Fix the wrong format specifier
+
+Patch 9.0.1864
+Problem: crash with bt_quickfix1_poc when cleaning up
+ and EXITFREE is defined
+Solution: Test if buffer is valid in a window, else close
+ window directly, don't try to access buffer properties
+
+Patch 9.0.1865
+Problem: Vim9: garbage collection may cause crash
+Solution: validate that class members typeval is not null
+
+Patch 9.0.1866
+Problem: Undo is synced after character find.
+Solution: Set no_u_sync when calling gotchars_nop().
+
+Patch 9.0.1867
+Problem: Vim9: access to interface statics possible
+Solution: Prevent direct access to interface statics
+
+Patch 9.0.1868
+Problem: test_crash still fails for circle ci
+Solution: give even more time to complete
+
+Patch 9.0.1869
+Problem: Coverity warns about uninitialized var
+Solution: initialize it
+
+Patch 9.0.1870
+Problem: Vim9: disassemble does not show static
+Solution: Show static flag
+
+Patch 9.0.1871
+Problem: Github CI does not run i386 job
+Solution: Add a i386 architecture
+
+Patch 9.0.1872
+Problem: CI: test_crash() fails on CI
+Solution: Skip test on BSD
+
+Patch 9.0.1873
+Problem: heap-buffer-overflow in vim_regsub_both
+Solution: Disallow exchanging windows when textlock is active
+
+Patch 9.0.1874
+Problem: CI may fail in test_recover_empty_swap
+Solution: Set directory option
+
+Patch 9.0.1875
+Problem: Vim9: improve test for disassemble + static
+Solution: Add a Vim9 script disassemble test for an interface with
+ static members
+
+Patch 9.0.1876
+Problem: Vim9: parsing commands with newlines wrong
+Solution: Accept a '\n' for parsing lists and command arguments
+
+Patch 9.0.1877
+Problem: missing test for patch 9.0.1873
+Solution: add a test trying to exchange windows
+
+Patch 9.0.1878
+Problem: tests running sh have problems
+Solution: Check that dash is installed
+
+Patch 9.0.1879
+Problem: Vim9: incorrect duplicate class member detection
+Solution: Incorrect duplicate class member detection when variable names
+ have the same prefix. Not able to access class member variables
+ using an object. Fix coding style issues
+
+Patch 9.0.1880
+Problem: Vim9: Need more tests for inheritance
+Solution: Add access tests and fixes.
+
+Patch 9.0.1881
+Problem: Test_crash fails on Mac
+Solution: Skip test on Mac
+
+Patch 9.0.1882
+Problem: Trailing white space in tests
+Solution: Delete it
+
+Patch 9.0.1883
+Problem: Vim9: Calling an interface method using a child object fails
+Solution: Search methods of parent class
+
+Patch 9.0.1884
+Problem: Wrong order of arguments for error messages
+Solution: Reverse order or arguments for e_aptypes_is_null_nr_str
+
+Patch 9.0.1885
+Problem: Vim9: no support for abstract methods
+Solution: Add support for defining abstract methods in an abstract class
+
+Patch 9.0.1886
+Problem: Various Typos
+Solution: Fix Typos
+
+Patch 9.0.1887
+Problem: Vim9: class members are accessible via object
+Solution: Disable class member variable access using an object
+
+Patch 9.0.1888
+Problem: Vim9: Problem trying to invoke class method
+Solution: Lookup the class method insider other classes
+
+Patch 9.0.1889
+Problem: Vim9 static tests fail
+Solution: Fix tests, make CI happy ;)
+
+Patch 9.0.1890
+Problem: Vim9: lookup code for class/object repeated
+Solution: Refactor and make use of lookup functions
+
+Patch 9.0.1891
+Problem: No runtime support for Mojo
+Solution: Add basic filetype and syntax plugins
+
+Patch 9.0.1892
+Problem: CI: no FreeBSD 14 support
+Solution: Drop support for FreeBSD 12, add FreeBSD 14
+
+Patch 9.0.1893
+Problem: CI: strptime test fails on BSD14
+Solution: Skip the test
+
+Patch 9.0.1894
+Problem: CI: trailing white space in tests
+Solution: clean up the trailing white space
+
+Patch 9.0.1895
+Problem: Vim9: finding method/member is inefficient
+Solution: Use lookups
+
+Patch 9.0.1896
+Problem: "below" virtual text doesn't work with 'rightleft'.
+Solution: Use column from right border with 'rightleft'.
+
+Patch 9.0.1897
+Problem: Vim9: confusing error with .= in compiled functions
+Solution: Check in error condition, if .= was attempted and in that case
+ give a different error message.
+
+Patch 9.0.1898
+Problem: Vim9: restrict access to static vars and methods
+Solution: Class members are accessible only from the class where they are
+ defined.
+
+Patch 9.0.1899
+Problem: potential buffer overflow in PBYTE macro
+Solution: Check returned memline length
+
+Patch 9.0.1900
+Problem: Configure script uses non-portable == comparison
+Solution: Use the standard and portable "=" instead
+
+Patch 9.0.1901
+Problem: win32: not correctly freeing environment
+Solution: After we call GetEnvironmentStringsW, we should call
+ FreeEnvironmentStringsW
+
+Patch 9.0.1902
+Problem: Vim9: Coverity complains about dead code
+Solution: Copy only object methods from the super class
+ to a subclass when extending a class. Fix
+ Coverity warning.
+
+Patch 9.0.1903
+Problem: Github Actions fails because snd-dummy modules missing
+ in current runner images
+Solution: ignore modprobe error
+
+Patch 9.0.1904
+Problem: Cirrus-CI fails because we have used all credits
+Solution: Remove FreeBSD 13.1 and MacOS M1
+
+Patch 9.0.1905
+Problem: FEAT_FLOAT no longer defined
+Solution: Remove last existing FEAT_FLOAT ifdefs in
+ message_test
+
+Patch 9.0.1906
+Problem: Vim9: Interfaces should not support class methods and
+ variables
+Solution: Make sure interface follow the interface specification
+
+Patch 9.0.1907
+Problem: No support for liquidsoap filetypes
+Solution: Add liquidsoap filetype detection code
+
+Patch 9.0.1908
+Problem: undefined behaviour upper/lower function ptrs
+Solution: Fix UBSAN error in regexp and simplify upper/lowercase
+ modifier code
+
+Patch 9.0.1909
+Problem: Vim9: problem calling class method from other class
+Solution: Fix this problem, fix readonly object access, update error
+ messages.
+
+Patch 9.0.1910
+Problem: Mac OS X: missing sound support on older versions
+Solution: Check Macro MAC_OS_X_VERSION_MIN_REQUIRED
+
+Patch 9.0.1911
+Problem: Vim9: segfault with null object and instanceof()
+Solution: return early
+
+Patch 9.0.1912
+Problem: Cirrus-CI running out of credits
+Solution: disable Cirrus-CI for now
+
+Patch 9.0.1913
+Problem: if_python: undefined behaviour for function pointers
+Solution: Fix if_python undefined behavior for function pointer casts
+
+Patch 9.0.1914
+Problem: Vim9: few issues when accessing object members
+Solution: When calling an object method, check for null object.
+ Accessing a Dict object member doesn't work.
+
+Patch 9.0.1915
+Problem: r_CTRL-C works differently in visual mode
+Solution: Make r_CTRL-C behave consistent in visual mode
+ in terminal and Windows GUI
+
+Patch 9.0.1916
+Problem: Crash when allocating large terminal screen
+Solution: Don't allow values > 1000 for terminal
+ screen columns and rows
+
+Patch 9.0.1917
+Problem: undefined behaviour with python function pointer
+Solution: correctly cast function pointers from void
+
+Patch 9.0.1918
+Problem: No filetype detection for Authzed filetypes
+Solution: Detect the *.zed file extension as authzed filetype
+
+Patch 9.0.1919
+Problem: Wrong curswant when clicking on empty line or with vsplits.
+Solution: Don't check for ScreenCols[] before the start of the window
+ and handle empty line properly.
+
+Patch 9.0.1920
+Problem: Vim9: cannot write public var in nested object
+Solution: Write variable in nested read-only object reference.
+ Also test write fails.
+
+Patch 9.0.1921
+Problem: not possible to use the jumplist like a stack
+Solution: Add the 'jumpoptions' setting to make the jumplist
+ a stack.
+
+Patch 9.0.1922
+Problem: LSP server request message is misinterpreted as a response message
+Solution: Check that the message does not have the "message" field
+
+Patch 9.0.1923
+Problem: curswant wrong on click with 've' and 'wrap' set
+Solution: Add w_leftcol to mouse click column.
+
+Patch 9.0.1924
+Problem: LSP server message still wrongly handled (after 9.0.1922)
+Solution: Handle 'method' messages properly, don't discard them, add
+ tests.
+
+Patch 9.0.1925
+Problem: if_python: still undefined behaviour with function pointer
+Solution: fix remaining problems
+
+Patch 9.0.1926
+Problem: Vim9: not enough info in error message
+Solution: Add class name, change member to variable, quote names
+
+Patch 9.0.1927
+Problem: patch 1916 (fixed terminal size) not optimal
+Solution: Add defines to make it easier changeable later
+
+Patch 9.0.1928
+Problem: Vim9: constructor type checking bug
+Solution: Fix class constructor regression
+
+Patch 9.0.1929
+Problem: runtime tests fail with tiny vim
+Solution: check for tiny vim, run runtime tests in CI
+ even for tiny version
+
+Patch 9.0.1930
+Problem: compiler warnings with clang-17
+Solution: Fix function prototypes and function pointer
+
+Patch 9.0.1931
+Problem: make test_compilers fails on ubuntu
+Solution: set LC_ALL=C
+
+Patch 9.0.1932
+Problem: Vim9: error when using null object constructor
+Solution: Check for a null object only when calling an object method
+
+Patch 9.0.1933
+Problem: Can change the type of a v: variable using if_lua.
+Solution: Add additional handling of v: variables like :let.
+
+Patch 9.0.1934
+Problem: bwipe fails after switching window from aucmd_win.
+Solution: Decrement b_nwindows after switching back to aucmd_win.
+
+Patch 9.0.1935
+Problem: Vim9: not consistent error messages
+Solution: Make error messages more consistent. Use "variable" for
+ (object/class) member
+
+Patch 9.0.1936
+Problem: test: using wrong expected message in test_crypt
+Solution: make use of single quotes
+
+Patch 9.0.1937
+Problem: missing test for mouse click + 'virtedit'
+Solution: Add test for clicking after eol with 'virtualedit' and wrapped
+ line
+
+Patch 9.0.1938
+Problem: multispace wrong when scrolling horizontally
+Solution: Update position in "multispace" or "leadmultispace" also in
+ skipped chars. Reorder conditions to be more consistent.
+
+Patch 9.0.1939
+Problem: still a problem when processing LSP RPC requests
+Solution: When processing async LSP RPC requests, compare sequence
+ numbers only in response messages
+
+Patch 9.0.1940
+Problem: wrong upstream version in libvterm README
+Solution: correct version to 839
+
+Patch 9.0.1941
+Problem: Memory leak detected (after 9.0.1928)
+Solution: Free arg_objm in get_lambda_tv()
+
+Patch 9.0.1942
+Problem: Vim9: execution stack invalidated with null object
+Solution: Check for a null object before adjusting the execution stack
+
+Patch 9.0.1943
+Problem: CI not run with clang-17
+Solution: Update CI to use clang-17
+
+Patch 9.0.1944
+Problem: Vim9: function instruction pointer invalidated
+Solution: Use the funcref index instead of the instruction pointer
+
+Patch 9.0.1945
+Problem: Vim9: missing support for ro-vars in interface
+Solution: Support only read-only object variables in an interface,
+ add additional checks when parsing class definitions.
+
+Patch 9.0.1946
+Problem: filename expansion using ** in bash may fail
+Solution: Try to enable the globstar setting
+
+Patch 9.0.1947
+Problem: Bash Expansion test fails on Windows/MacOS
+Solution: Disable Test_glob_extended_bash for now
+
+Patch 9.0.1948
+Problem: Vim9: object variable "this." should only be used in
+ constructor
+Solution: Disallow to this in normal object methods (other than
+ constructors)
+
+Patch 9.0.1949
+Problem: Vim9: allows reserved keywords as members
+Solution: Disallow reserved keywords, disallow
+ duplicate object and class variables
+
+Patch 9.0.1950
+Problem: Vim9: error codes spread out
+Solution: group them together and reserve 100
+ more for future use
+
+Patch 9.0.1951
+Problem: Vim9: hard to debug vim9_class errors from CI
+Solution: Include the line number in assert_xxx() calls. Include the
+ entire error message in the tests. Fix the indentation in the
+ test file. Add tags for new error codes.
+
+Patch 9.0.1952
+Problem: Vim9: unused static field
+Solution: remove it and simplify code
+
+Patch 9.0.1953
+Problem: Misplaced comment in errors.h
+Solution: Move it up
+
+Patch 9.0.1954
+Problem: CI: change netrw label in labeller bot
+Solution: Rename it to 'plugin-netrw'
+
+Patch 9.0.1955
+Problem: Vim9: lockvar issues with objects/classes
+Solution: fix `get_lhs()` object/class access and avoid `SEGV`,
+ make error messages more accurate.
+
+Patch 9.0.1956
+Problem: Custom cmdline completion skips original cmdline when pressing
+ Ctrl-P at first match if completion function invokes glob().
+Solution: Move orig_save into struct expand_T.
+
+Patch 9.0.1957
+Problem: termcap options should change on keyprotocol setting
+Solution: Apply termcap entries when 'keyprotocol' changes
+
+Patch 9.0.1958
+Problem: cannot complete option values
+Solution: Add completion functions for several options
+
+Patch 9.0.1959
+Problem: Vim9: methods parameters and types are covariant
+Solution: Support contra-variant type check for object method arguments
+ (similar to Dart).
+
+Patch 9.0.1960
+Problem: Make CI checks more strict
+Solution: Add -Wstrict-prototypes -Wmissing-prototypes to CI,
+ fix uncovered problems
+
+Patch 9.0.1961
+Problem: Cmdline completion for 'listchars' fields doesn't include
+ "multispace" and "leadmultispace" (after 9.0.1958).
+Solution: Include "multispace" and "leadmultispace" in lcstab.
+
+Patch 9.0.1962
+Problem: No support for writing extended attributes
+Solution: Add extended attribute support for linux
+
+Patch 9.0.1963
+Problem: Configure script may not detect xattr correctly
+Solution: include sys/xattr instead of attr/xattr,
+ make Test_write_with_xattr_support() test
+ xattr feature correctly
+
+Patch 9.0.1964
+Problem: xattr support fails to build on MacOS X
+Solution: Disable xattr support for MacOS X
+
+Patch 9.0.1965
+Problem: wrong auto/configure script
+Solution: regenerate with autoconf 2.71
+
+Patch 9.0.1966
+Problem: configure prints stray 6 when checking libruby
+Solution: redirect stdout to dev/null
+
+Patch 9.0.1967
+Problem: xattr errors not translated
+Solution: mark for translation, consistently capitalize
+ first letter.
+
+Patch 9.0.1968
+Problem: cmdline completion should consider key option
+Solution: Disable cmdline completion for key option, slightly
+ refactor how P_NO_CMD_EXPAND is handled
+
+Patch 9.0.1969
+Problem: buffer-overflow in trunc_string()
+Solution: Add NULL at end of buffer
+
+Patch 9.0.1970
+Problem: win32: high-dpi support can be improved
+Solution: implement WM_GETDPISCALEDSIZE
+
+Patch 9.0.1971
+Problem: macOS: FEAT_SOUND guard too restrictive
+Solution: check for older macOS support properly
+
+Patch 9.0.1972
+Problem: win32: missing '**' expansion test (after v9.0.1947)
+Solution: Add test for MS-Windows
+
+Patch 9.0.1973
+Problem: Clean up cmdline option completion code
+Solution: Fix various minor problems
+
+Patch 9.0.1974
+Problem: vim9: using contra-variant type-checks (after v9.0.1959)
+Solution: Use invariant type checking instead
+
+Patch 9.0.1975
+Problem: xattr: permission-denied errors on write
+Solution: ignore those errors
+
+Patch 9.0.1976
+Problem: style: space before tab in optionstr.c
+Solution: remove the space
+
+Patch 9.0.1977
+Problem: Vim9: object members can change type
+Solution: Check type during assignment to object/class var
+
+Patch 9.0.1978
+Problem: No filetype detection for just files
+Solution: Detect just files (*.just, justfile, etc)
+
+Patch 9.0.1979
+Problem: Cirrus CI disabled
+Solution: re-enable Cirrus CI
+
+Patch 9.0.1980
+Problem: win32: issues with stable python ABI
+Solution: if_python3,win32: Fix Python3 stable ABI
+
+Patch 9.0.1981
+Problem: Cannot scroll up in diff mode with many filler lines and zero
+ 'scrolloff'.
+Solution: Invalidate w_cline_row before calling comp_botline().
+
+Patch 9.0.1982
+Problem: vim9: clean up from v9.0.1955
+Solution: Fix a few remaining issues, improve error message
+
+Patch 9.0.1983
+Problem: Scrolling non-current window using mouse is inconsistent
+ depending on 'scrollbind'/'scrolloff' and different from GUI
+ vertical scrollbar when 'cursorbind' is set.
+Solution: Don't move cursor in non-current windows for 'cursorbind' if
+ cursor in the current window didn't move.
+
+Patch 9.0.1984
+Problem: CI: Test_open_delay*() fails on FreeBSD 14
+Solution: Skip it on BSD
+
+Patch 9.0.1985
+Problem: CI: codecov is intrusive
+Solution: disable codecov comments
+
+Patch 9.0.1986
+Problem: Vim9: accepting type-annotations
+Solution: Reject type annotations outside of declarations.
+
+Patch 9.0.1987
+Problem: win32: font-size calculation can be improved
+Solution: calculate font size before the window size
+
+Patch 9.0.1988
+Problem: Vim9: potential use-after-free for class members
+Solution: Use the class-related grow array for storing the
+ member type instead of using a temporary type
+ list grow array
+
+Patch 9.0.1989
+Problem: Vim9: double error message given
+Solution: Only give second error message, if ther
+ wasn't one given before
+
+Patch 9.0.1990
+Problem: strange error number
+Solution: change error number,
+ add doc tag for E1507
+
+Patch 9.0.1991
+Problem: no cmdline completion for setting the font
+Solution: enable it on Win32 and GTK builds
+
+Patch 9.0.1992
+Problem: segfault in exmode when redrawing
+Solution: skip gui_scroll when exmode_active
+
+Patch 9.0.1993
+Problem: warning about unused function definition
+Solution: add ifdefs
+
+Patch 9.0.1994
+Problem: inconsistent feature description
+Solution: delete old mentioned feature sets small and big
+
+Patch 9.0.1995
+Problem: Invalid memory access when 'foldexpr' returns empty string.
+Solution: Check for NUL.
+
+Patch 9.0.1996
+Problem: Cannot build with python312
+Solution: Define wrapper types and functions for python 3.12
+
+Patch 9.0.1997
+Problem: Some unused code in move.c and string.c
+Solution: Remove it
+
+Patch 9.0.1998
+Problem: xxd: cannot reverse a bit dump
+Solution: implement reversing the bit dump using -b -r
+
+Patch 9.0.1999
+Problem: Vim9: some error messages can be improved
+Solution: Mention the defining class for variable access error message
+
+Patch 9.0.2000
+Problem: Vim9: use-after-free in deep call stack
+Solution: Get the objct pointer from execution stack
+
+Patch 9.0.2001
+Problem: Vim9: segfault with islocked()
+Solution: Check that the lval pointer is not null for objects and
+ class variables
+
+Patch 9.0.2002
+Problem: Vim9: need cleanup of class related interface code
+Solution: Remove the unused class variable and class method related code
+ for interfaces.
+
+Patch 9.0.2003
+Problem: xxd: compilation warning
+Solution: initialize variables
+
+Patch 9.0.2004
+Problem: Missing test file
+Solution: git-add the file to the repo
+
+Patch 9.0.2005
+Problem: partially revert patch v9.0.1997
+Solution: add a comment, to make clear it's not used
+
+Patch 9.0.2006
+Problem: Vim9: need more tests
+Solution: add additional disassembly tests
+
+Patch 9.0.2007
+Problem: Vim9: covariant parameter types allowed when assigning
+ functions
+Solution: Enforce invariant type check for arguments and return value
+ when assigning a funcref
+
+Patch 9.0.2008
+Problem: test: undofile left behind
+Solution: cleanup undofile
+
+Patch 9.0.2009
+Problem: cmdline-completion for comma-separated options wrong
+Solution: Fix command-line expansions for options with filenames with
+ commas
+
+Patch 9.0.2010
+Problem: [security] use-after-free from buf_contents_changed()
+Solution: block autocommands
+
+Patch 9.0.2011
+Problem: INI files not detected
+Solution: detect uppercase .INI as dosini files
+
+Patch 9.0.2012
+Problem: Vim9: error message can be more accurate
+Solution: Fix the error messages
+
+Patch 9.0.2013
+Problem: Unicode tables outdated
+Solution: Update Unicode tables to v15.1 (released 23.09.2023)
+
+Patch 9.0.2014
+Problem: confusing ifdefs in if_<lang>.c
+Solution: refactor ifndefs to #ifdefs
+
+Patch 9.0.2015
+Problem: Vim9: does not handle islocked() from a method correctly
+Solution: Handle islocked() builtin from a method.
+
+Patch 9.0.2016
+Problem: Vim9: assignment operators don't work for class vars
+Solution: implement it
+
+Patch 9.0.2017
+Problem: linebreak applies for leading whitespace
+Solution: only apply linebreak, once we have found non-breakat chars in
+ the line
+
+Patch 9.0.2018
+Problem: complete_info() returns wrong index
+Solution: Make order of 'info' in completion_info consistent
+
+Patch 9.0.2019
+Problem: Vim9: no support for funcrefs
+Solution: Add support for object/class funcref members
+
+Patch 9.0.2020
+Problem: Vim9: islocked() needs more work
+Solution: rework islocked() and remove sync_root
+ from get_lval()
+
+Patch 9.0.2021
+Problem: Coverity complains about change in charset (after v9.0.2017)
+Solution: check pointer t at index 0
+
+Patch 9.0.2022
+Problem: When clicking in the middle of a TAB, getmousepos() returns
+ the column of the next char instead of the TAB.
+Solution: Break out of the loop when the vcol to find is inside current
+ char. Fix invalid memory access when calling virtcol2col() on
+ an empty line.
+
+Patch 9.0.2023
+Problem: need more tests for :cq
+Solution: Add more tests, including wraparound on linux
+
+Patch 9.0.2024
+Problem: no filetype detection for Debian sources
+Solution: Add new deb822sources filetype
+
+Patch 9.0.2025
+Problem: no cmdline completion for ++opt args
+Solution: Add cmdline completion for :e ++opt=arg and :terminal
+ [++options]
+
+Patch 9.0.2026
+Problem: win32: python3 dll loading can be improved
+Solution: Load DLL from registry path
+
+Patch 9.0.2027
+Problem: Vim9: no support for bitwise operators in lambda funcs
+Solution: move "evaluate" assignment a bit up in order to decide
+ to perform bitwise operations
+
+Patch 9.0.2028
+Problem: confusing build dependencies
+Solution: clean them up, make them parallelizable
+
+Patch 9.0.2029
+Problem: Vim9: no support for partials using call()
+Solution: Add support
+
+Patch 9.0.2030
+Problem: no max callback recursion limit
+Solution: bail out, if max call recursion for callback functions
+ has been reached.
+
+Patch 9.0.2031
+Problem: `TextChangedI` can trigger on entering Insert mode if there
+ was previously a change not in Insert mode.
+Solution: Make it trigger only when text is actually changed in Insert
+ mode.
+
+Patch 9.0.2032
+Problem: Cannot accurately get mouse clicking position when clicking on
+ a TAB or with virtual text.
+Solution: Add a "coladd" field to getmousepos() result.
+
+Patch 9.0.2033
+Problem: gcc overflow-warning for f_resolve
+Solution: use pointer p instead of pointer q[-1]
+
+Patch 9.0.2034
+Problem: don't try to copy SMACK attribute, when none exist
+Solution: return early if SMACK extended attributes do not exist or
+ if they are not supported
+
+Patch 9.0.2035
+Problem: [security] use-after-free with wildmenu
+Solution: properly clean up the wildmenu when exiting
+
+Patch 9.0.2036
+Problem: if_python: rework python3.12 build dependency
+ (after 9.0.1996)
+Solution: use PyTuple_Size instead of inlining the Py_SIZE
+ into the Vim code base
+
+Patch 9.0.2037
+Problem: A few remaining cmdline completion issues with C-E/Y
+Solution: Fix cmdline completion fuzzy/Ctrl-E/Ctrl-Y/options when not
+ used at the end
+
+Patch 9.0.2038
+Problem: Vim9: object method funcref not cleaned up after use
+Solution: Clean up type stack after using object method funcref,
+ remove now longer used ISN_DEFEROBJ instruction
+
+Patch 9.0.2039
+Problem: completion shows current word after completion restart
+Solution: remove the word being completed after completion restart
+
+Patch 9.0.2040
+Problem: trim(): hard to use default mask
+Solution: Use default 'mask' when it is v:none
+
+Patch 9.0.2041
+Problem: trim(): hard to use default mask (partly revert v9.0.2040)
+Solution: use default mask when it is empty
+
+Patch 9.0.2042
+Problem: Test_cq_zero_exmode fails without channel feature
+Solution: Make the test check the channel feature
+
+Patch 9.0.2043
+Problem: Vim9: issue with funcref assignment and varargs
+Solution: Fix funcref type checking
+
+Patch 9.0.2044
+Problem: Vim9: exceptions confuse deferred functions
+Solution: save and restore exception state when calling deferred
+ functions
+
+Patch 9.0.2045
+Problem: tests: checking for swap files takes time
+Solution: don't check for swap files when test has been skipped
+
+Patch 9.0.2046
+Problem: win32,python: warning that MS_WIN64 got re-defined
+Solution: Do not define MS_WIN64, as it is no longer used
+
+Patch 9.0.2047
+Problem: perl: warning about inconsistent dll linkage
+Solution: suppress warning
+
+Patch 9.0.2048
+Problem: python: uninitialized warning
+Solution: initialize 'minor' always
+
+Patch 9.0.2049
+Problem: Vim9: not recognizing qualified class vars for infix ops
+Solution: Drop the class type from the stack before generating the
+ CLASSMEMBER instruction
+
+Patch 9.0.2050
+Problem: Vim9: crash with deferred function call and exception
+Solution: Save and restore exception state
+
+Patch 9.0.2051
+Problem: Vim9: wrong error for non-existing object var
+Solution: mention object or class depending on whether
+ the var is an object or class variable.
+
+Patch 9.0.2052
+Problem: win32: using deprecated wsock32 api
+Solution: Use winsock2 (ws2_32) consistently
+
+Patch 9.0.2053
+Problem: zig filetype detection test wrong
+Solution: Remove .zir pattern, add new test for .zon pattern
+
+Patch 9.0.2054
+Problem: win32: iscygpty needs update
+Solution: Update iscygpty to the latest version, make use iswascii()
+ API function
+
+Patch 9.0.2055
+Problem: Vim9: non-consistent error messages
+Solution: make error messages more consistent with common structure
+
+Patch 9.0.2056
+Problem: no digraph for quadruple prime
+Solution: add quadruple prime digraph using 4'
+
+Patch 9.0.2057
+Problem: Vim9: no strict type checks for funcrefs varargs
+Solution: Perform strict type checking when declaring funcrefs
+ with vararg declaration, add tests
+
+Patch 9.0.2058
+Problem: tests: avoid error when no swap files exist
+Solution: use unlet! so that no error message is reported
+ in case the variable does not exists
+
+Patch 9.0.2059
+Problem: outstanding exceptions may be skipped
+Solution: When restoring exception state, process remaining outstanding
+ exceptions
+
+Patch 9.0.2060
+Problem: *.{gn,gni} files are not recognized
+Solution: Detect some as gn filetype (without adding an extra filetype)
+
+Patch 9.0.2061
+Problem: not able to detect xkb filetypes
+Solution: Detect files below /u/s/X11/xkb as xkb files (without adding
+ an extra filetype)
+
+Patch 9.0.2062
+Problem: Janet files are not recognised
+Solution: Add filename and shebang detection (without
+ adding an extra filetype plugin)
+
+Patch 9.0.2063
+Problem: pacman hooks are detected as conf filetype
+Solution: make it consistent to pacman.conf and detect those
+ hooks as confini
+
+Patch 9.0.2064
+Problem: cannot use buffer-number for errorformat
+Solution: add support for parsing a buffer number using '%b' in
+ 'errorformat'
+
+Patch 9.0.2065
+Problem: EXPAND flag set for filetype option
+Solution: Remove P_EXPAND flag from the 'filetype' option
+
+Patch 9.0.2066
+Problem: xxd: corrupting files when reversing bit dumps
+Solution: handle reversing bit dump slightly differently
+
+Patch 9.0.2067
+Problem: xxd: coloring was disabled on Cygwin
+Solution: don't include WIN32
+
+Patch 9.0.2068
+Problem: [security] overflow in :history
+Solution: Check that value fits into int
+
+Patch 9.0.2069
+Problem: possible to escape bracketed paste mode with Ctrl-C
+Solution: Do not handle Ctrl-C specially when key_protocol
+ is in use, makes bracketed paste mode more robust
+
+Patch 9.0.2070
+Problem: [security] disallow setting env in restricted mode
+Solution: Setting environment variables in restricted mode could
+ potentially be used to execute shell commands. Disallow this.
+
+Patch 9.0.2071
+Problem: objdump files not recognized
+Solution: detect *.objdump files, add a filetype plugin
+
+Patch 9.0.2072
+Problem: Vim9: no nr2str conversion in list-unpack
+Solution: Generate 2STRING instruction to convert dict index to string
+
+Patch 9.0.2073
+Problem: typo in quickfix.c comments
+Solution: fix them
+
+Patch 9.0.2074
+Problem: Completion menu may be wrong
+Solution: Check for the original direction of the completion menu,
+ add more tests, make it work with 'noselect'
+
+Patch 9.0.2075
+Problem: TextChangedI may not always trigger
+Solution: trigger it in more cases: for insert/
+ append/change operations, and when
+ opening a new line,
+
+Patch 9.0.2076
+Problem: Vim9: No support for type aliases
+Solution: Implement :type command
+
+Patch 9.0.2077
+Problem: CI fails because of trailing whitespace in test
+Solution: Remove it
+
+Patch 9.0.2078
+Problem: several problems with type aliases
+Solution: Check for more error conditions, add tests,
+ fix issues
+
+Patch 9.0.2079
+Problem: Not all Dart files detected
+Solution: Add shebang filetype detection for Dart
+
+Patch 9.0.2080
+Problem: vim9_script test too large
+Solution: split vim9 type alias test into
+ separate test file
+
+Patch 9.0.2081
+Problem: With 'smoothscroll' set, "w_skipcol" is not reset when unsetting
+ 'wrap'. Resulting in incorrect calculation of the cursor position.
+Solution: Reset "w_skipcol" when unsetting 'wrap'.
+
+Patch 9.0.2082
+Problem: test_channel may fail because of IPv6 config issues
+Solution: Catch and skip the test, if getaddrinfo() fails with
+ 'Address family not supported'
+
+Patch 9.0.2083
+Problem: Perl: xsubpp may be in non-standard location
+Solution: Add --with-subpp configure option
+
+Patch 9.0.2084
+Problem: Vim9: abstract static methods are possible
+Solution: Disallow abstract static methods
+
+Patch 9.0.2085
+Problem: Vim9: abstract can be used in interface
+Solution: Disallow the use of abstract in an interface
+
+Patch 9.0.2086
+Problem: code cleanup for option callbacks needed
+Solution: remove flag os_doskip, it's not necessary, as we can check,
+ whether an error message was returned
+
+Patch 9.0.2087
+Problem: build-failure in vim9class
+Solution: reference correct error message,
+ disable non-failing test
+
+Patch 9.0.2088
+Problem: Vim9: still allows abstract static methods
+ (after v9.0.2084, v9.0.2085 and v9.0.2087)
+Solution: Disallow abstract static methods
+
+Patch 9.0.2089
+Problem: sound_playfile() fails when using powershell
+Solution: quote filename using doublequotes, don't escape filename,
+ because it doesn't use the shell
+
+Patch 9.0.2090
+Problem: complete_info() skips entries with 'noselect'
+Solution: Check, if first entry is at original text state
+
+Patch 9.0.2091
+Problem: Vim9: cannot convert list to string using +=
+ (after 9.0.2072)
+Solution: convert dict index to string later in compile_member()
+
+Patch 9.0.2092
+Problem: tests: failure in test_arabic
+Solution: adjust the test for the changed arabic keymap
+
+Patch 9.0.2093
+Problem: Unsupported option causes rest of modeline test to be skipped.
+Solution: Revert the change from patch 8.2.1432.
+
+Patch 9.0.2094
+Problem: Vim9: need more assignment tests
+Solution: Add test for using different types in assignment, function
+ arguments and return values
+
+Patch 9.0.2095
+Problem: statusline may look different than expected
+Solution: do not check for highlighting of stl and stlnc characters
+
+Patch 9.0.2096
+Problem: Vim9: confusing usage of private
+Solution: clarify and use protected keyword instead
+
+Patch 9.0.2097
+Problem: No support for cypher files
+Solution: Add cypher filetype detection
+
+Patch 9.0.2098
+Problem: No filetype support for xcompose files
+Solution: Add filetype detection
+
+Patch 9.0.2099
+Problem: Terminal control codes¹ are sent even when silent
+ mode is on, causing the terminal to clear up
+Solution: Block any terminal codes when silent mode is on
+
+Patch 9.0.2100
+Problem: CI: test_Termdebug fails
+Solution: only test for a changed winlayout, if the window
+ width actually changed
+
+Patch 9.0.2101
+Problem: CI: test_termdebug may still fail
+Solution: use term_wait() to make it more robust
+
+Patch 9.0.2102
+Problem: matchparen highlight not cleared in completion mode
+Solution: Clear matchparen highlighting in completion mode
+
+Patch 9.0.2103
+Problem: recursive callback may cause issues on some archs
+Solution: Decrease the limit drastically to 20
+
+Patch 9.0.2104
+Problem: wast filetype should be replaced by wat filetype
+Solution: start using the official wat filetype name
+
+Patch 9.0.2105
+Problem: Skipcol is not reset when topline changed scrolling cursor to top
+Solution: reset skipcol
+
+Patch 9.0.2106
+Problem: [security]: Use-after-free in win_close()
+Solution: Check window is valid, before accessing it
+
+Patch 9.0.2107
+Problem: [security]: FPE in adjust_plines_for_skipcol
+Solution: don't divide by zero, return zero
+
+Patch 9.0.2108
+Problem: [security]: overflow with count for :s command
+Solution: Abort the :s command if the count is too large
+
+Patch 9.0.2109
+Problem: [security]: overflow in nv_z_get_count
+Solution: break out, if count is too large
+
+Patch 9.0.2110
+Problem: [security]: overflow in ex address parsing
+Solution: Verify that lnum is positive, before subtracting from
+ LONG_MAX
+
+Patch 9.0.2111
+Problem: [security]: overflow in get_number
+Solution: Return 0 when the count gets too large
+
+Patch 9.0.2112
+Problem: [security]: overflow in shift_line
+Solution: allow a max indent of INT_MAX
+
+Patch 9.0.2113
+Problem: Coverity warns for another overflow in shift_line()
+Solution: Test for INT_MAX after the if condition, cast integer values
+ to (long long) before multiplying.
+
+Patch 9.0.2114
+Problem: overflow detection not accurate when adding digits
+Solution: Use a helper function
+
+Patch 9.0.2115
+Problem: crash when callback function aborts because of recursiveness
+Solution: correctly initialize rettv
+
+Patch 9.0.2116
+Problem: No test for defining sign without attribute
+Solution: Add test for defining sign without attributes
+
+Patch 9.0.2117
+Problem: [security] use-after-free in qf_free_items
+Solution: only access qfpnext, if it hasn't been freed
+
+Patch 9.0.2118
+Problem: [security]: avoid double-free
+Solution: Only fee plain_font, when it is not the same as bold_font
+
+Patch 9.0.2119
+Problem: remove dead-condition in ex_class()
+Solution: remove the extra condition
+
+Patch 9.0.2120
+Problem: un-used assignment in do_source_buffer_init
+Solution: Remove it
+
+Patch 9.0.2121
+Problem: [security]: use-after-free in ex_substitute
+Solution: always allocate memory
+
+Patch 9.0.2122
+Problem: [security]: prevent overflow in indenting
+Solution: use long long and remove cast to (int)
+
+Patch 9.0.2123
+Problem: Problem with initializing the length of range() lists
+Solution: Set length explicitly when it shouldn't contain any items
+
+Patch 9.0.2124
+Problem: INT overflow logic can be simplified
+Solution: introduce trim_to_int() function
+
+Patch 9.0.2125
+Problem: File info disappears immediately when 'cmdheight' has just
+ decreased due to switching tabpage and 'shortmess' doesn't
+ contain 'o' or 'O'.
+Solution: Make sure msg_row isn't smaller than cmdline_row.
+
+Patch 9.0.2126
+Problem: Unused assignments when checking the value of 'listchars'.
+Solution: Loop only once when just checking the value. Add a test to
+ check that this change doesn't cause double-free.
+
+Patch 9.0.2127
+Problem: translation Makefiles can be improved
+Solution: Modified and extended po-related Makefiles and
+ related files
+
+Patch 9.0.2128
+Problem: No runtime files for SWIG filetypes
+Solution: Add syntax and filetype plugins for SWIG (Simplified Wrapper
+ Interface Generator) description files.
+
+Patch 9.0.2129
+Problem: [security]: use-after-free in call_dfunc()
+Solution: Refresh dfunc pointer
+
+Patch 9.0.2130
+Problem: some errors with translation Makefiles
+Solution: fix issues
+
+Patch 9.0.2131
+Problem: not all nushell files detected
+Solution: use *.nu to detect nushell files
+
+Patch 9.0.2132
+Problem: Duplicate Netbeans Error Message
+Solution: Remove duplicate message
+
+Patch 9.0.2133
+Problem: Cannot detect overstrike mode in Cmdline mode
+Solution: Make mode() return "cr" for overstrike
+
+Patch 9.0.2134
+Problem: ml_get error when scrolling after delete
+Solution: mark topline to be validated in main_loop
+ if it is larger than current buffers line
+ count
+
+Patch 9.0.2135
+Problem: No test for mode() when executing Ex commands
+Solution: Add some test cases and simplify several other test cases.
+ Also add a few more test cases for ModeChanged.
+
+Patch 9.0.2136
+Problem: MSVC errorformat can be improved
+Solution: parse error type and column number in MSVC errorformat
+
+Patch 9.0.2137
+Problem: Can't detect angular & mustache filetypes
+Solution: Detect *.mustache as Mustache filetype;
+ detect *.component.html as html.angular filetype
+
+Patch 9.0.2138
+Problem: Overflow logic requires long long
+Solution: Define vimlong_T data type to make life easier
+ for porters
+
+Patch 9.0.2139
+Problem: html.angular ft is problematic
+Solution: partly revert v9.0.2137
+
+Patch 9.0.2140
+Problem: [security]: use-after-free in win-enter
+Solution: validate window pointer before calling win_enter()
+
+Patch 9.0.2141
+Problem: [security]: buffer-overflow in suggest_trie_walk
+Solution: Check n before using it as index into bytes array
+
+Patch 9.0.2142
+Problem: [security]: stack-buffer-overflow in option callback functions
+Solution: pass size of errbuf down the call stack, use snprintf()
+ instead of sprintf()
+
+Patch 9.0.2143
+Problem: [security]: buffer-overflow in ex_substitute
+Solution: clear memory after allocating
+
+Patch 9.0.2144
+Problem: Text properties causes wrong line wrapping to be drawn.
+Solution: Find the index of the last text property that inserts text.
+
+Patch 9.0.2145
+Problem: Wrong scrolling in Insert mode with 'smoothscroll' at the
+ bottom of the window.
+Solution: Don't use set_topline() when 'smoothscroll' is set.
+
+Patch 9.0.2146
+Problem: text-property without type errors when joining
+Solution: count all text-properties, with or without type
+ before joining lines
+
+Patch 9.0.2147
+Problem: Type check tests fail without the channel feature
+Solution: only run tests, when Vim was build with +channel
+
+Patch 9.0.2148
+Problem: Vim does not detect pacman.log file
+Solution: Detect pacmanlogs and add syntax highlighting
+
+Patch 9.0.2149
+Problem: [security]: use-after-free in exec_instructions()
+Solution: get tv pointer again
+
+Patch 9.0.2150
+Problem: Using int for errbuflen in option funcs
+Solution: Use size_t for errbuflen in string option functions
+
+Patch 9.0.2151
+Problem: 'breakindent' is not drawn after diff filler lines.
+Solution: Correct check for whether 'breakindent' should be drawn.
+
+Patch 9.0.2152
+Problem: Using type unknown for List/Dict containers
+Solution: Use 'any' instead
+
+Patch 9.0.2153
+Problem: no support to build on OpenVMS
+Solution: Add OpenVMS X86_64 platform port
+
+Patch 9.0.2154
+Problem: The options[] array is not sorted alphabetically.
+Solution: Sort it alphabetically. Add a test. Avoid unnecessary loop
+ iterations in findoption().
+
+Patch 9.0.2155
+Problem: Vim9: type not kept when assigning vars
+Solution: When assigning a List or a Dict value to a variable of type
+ 'any', keep the type
+
+Patch 9.0.2156
+Problem: Vim9: can use typealias in an assignment
+Solution: Generate errors when class/typealias involved in the rhs of an
+ assignment
+
+Patch 9.0.2157
+Problem: Vim9: incorrectly parses :def func definitions
+Solution: check for more context when parsing function args
+
+Patch 9.0.2158
+Problem: [security]: use-after-free in check_argument_type
+Solution: Reset function type pointer when freeing the function type
+ list
+
+Patch 9.0.2159
+Problem: screenpos() may crash with neg. column
+Solution: validate and correct column
+
+Patch 9.0.2160
+Problem: instanceof() should use varargs as second arg
+Solution: Modify `instanceof()` to use varargs instead of list
+
+Patch 9.0.2161
+Problem: Vim9: not able to use imported interfaces and classes
+Solution: Detect imported class/interfaces names correctly
+
+Patch 9.0.2162
+Problem: Vim9: type documentation out-dated
+Solution: Update documentation, fix typo in type alias
+ definition
+
+Patch 9.0.2163
+Problem: Vim9: type can be assigned to list/dict
+Solution: Prevent assigning a `type` to a `list` or `dict`
+
+Patch 9.0.2164
+Problem: Vim9: can use type a func arg/return value
+Solution: Check if using type as function argument or return value
+
+Patch 9.0.2165
+Problem: Vim9: can simplify arg type checking code
+Solution: In `f_argcheck` array use `arg_any`, instead of NULL
+
+Patch 9.0.2166
+Problem: Memory leak in Configure Script when checking GTK
+Solution: Free the allocated memory
+
+Patch 9.0.2167
+Problem: Vim9-script object/class variable declarations use syntax
+ that is inconsistent with the rest of the language.
+Solution: Use :var to declare object and class variables.
+
+Patch 9.0.2168
+Problem: Moving tabpages on :drop may cause an endless loop
+Solution: Disallow moving tabpages on :drop when cleaning up the arglist
+ first
+
+Patch 9.0.2169
+Problem: Vim9: builtin funcs may accept a non-value
+Solution: Restrict builtin functions that accept `type`
+
+Patch 9.0.2170
+Problem: Vim9: no support for const/final class/objects vars
+Solution: Support final and const object and class variables
+
+Patch 9.0.2171
+Problem: The options[] array is still not sorted alphabetically
+ (after: v9.0.2154), causing test failures
+Solution: Sort the remaining items
+
+Patch 9.0.2172
+Problem: Vim9: compiling :defer may fail
+Solution: compile defer, when ctx_skip is not SKIP_YES
+
+Patch 9.0.2173
+Problem: Vim9: Vim crashes when compiling a for statement with a
+ non-existing type
+Solution: Error out when lhs_type is not null
+
+Patch 9.0.2174
+Problem: Vim9: segfault when assigning to type
+Solution: do not clear typeval, add missing patch number
+
+Patch 9.0.2175
+Problem: Compiler warning for uninitialized var
+Solution: initialize variable to NULL
+
+Patch 9.0.2176
+Problem: Compile error with Motif UI + mouse support (after v9.0.1262)
+Solution: Use correct oldval option pointer
+
+Patch 9.0.2177
+Problem: Wrong cursor position when dragging out of window.
+Solution: Don't use ScreenCols[] when mouse is not in current window.
+
+Patch 9.0.2178
+Problem: reg_executing() returns wrong result in :normal with range
+ when 'showcmd' is set (after 8.2.4705).
+Solution: Reset "pending_end_reg_executing" when executing a register.
+
+Patch 9.0.2179
+Problem: no filetype detection for execline scripts
+Solution: Add filetype detection for execline
+
+Patch 9.0.2180
+Problem: POSIX function name in exarg struct causes issues
+ on OpenVMS
+Solution: Rename getline member in exarg struct to ea_getline,
+ remove isinf() workaround for VMS
+
+Patch 9.0.2181
+Problem: Vim9: missing error messages
+Solution: Add one more error message
+
+Patch 9.0.2182
+Problem: Vim9: need a way to reserve future extension
+Solution: reserve double underscore prefix for future use
+ (Yegappan Lakshmanan)
+
+Patch 9.0.2183
+Problem: Maximum callback depth is not configurable.
+Solution: Revert patch 9.0.2103. Set 'maxfuncdepth' in test.
+ (zeertzjq)
+
+Patch 9.0.2184
+Problem: Vim9: inconsistent :type/:class messages
+Solution: Update the Messages (Ernie Rael)
+
+Patch 9.0.2185
+Problem: Coverity complains about not checking return value
+ in compare_isn_not_values (after 9.0.2184)
+Solution: cast return value to "(void)" to make intention clear
+
+Patch 9.0.2186
+Problem: LTCG compile error on Win/ARM64 for `write_chars()`
+Solution: Explicitly initialise the storage to use data rather than BSS
+ (Saleem Abdulrasool)
+
+Patch 9.0.2187
+Problem: Visual selection isn't drawn with 'breakindent' when the line
+ doesn't fit in the window (Jaehwang Jung)
+Solution: Adjust wlv->fromcol also for 'breakindent' (zeertzjq)
+
+Patch 9.0.2188
+Problem: cursor wrong after { in single line buffer
+ (Edwin Chan)
+Solution: do not place the cursor at the end for a single
+ line buffer when moving backwards (Gary Johnson)
+
+Patch 9.0.2189
+Problem: Wrong display when 'breakindentopt' contains "sbr" and
+ 'showbreak' and 'nobreakindent' are set.
+Solution: Always reset wlv->need_showbreak regardless of the values of
+ 'breakindent' and 'showbreak', as they aren't checked when
+ setting wlv->need_showbreak (zeertzjq)
+
+Patch 9.0.2190
+Problem: proto files need update
+Solution: re-generate them
+
+ vim:tw=78:ts=8:noet:ft=help:norl:fdm=manual: