Windows 11 24H2: intermittent loss of @+ register contents when assigning @+ from an expression involving @+
Author: RBGSCreated Sep 24, 2026Updated Sep 25, 2026
Labelsbug
Steps to reproduce
- gvim -u NONE -U NONE
- Define the function:
function! Regtest()let i = 10while i > 0let i -= 1let @+ = 'abc' | let @+ = @+ | echo i .. @+endwhileendfunction - Call Regtest()
- Alternatively run repeatedly:
:let @+ = 'abc' | let @+ = @+ | echo @+
Expected behaviour
Expected, actual on unaffected system: 9abc 8abc 7abc 6abc 5abc 4abc 3abc 2abc 1abc 0abc
Actual on affected system (varies): 9abc 8abc 7 6 5 4 3abc 2abc 1 0abc
Version of Vim
VIM - Vi IMproved 9.2 (2026 Feb 14, compiled Aug 23 2026 22:20:15) MS-Windows 32-bit GUI/console version with OLE support Included patches: 1-1001 Compiled by runneradmin@runnervm6iq3x
Environment
System where issue occurs: Edition Windows 11 Enterprise Version 24H2 Installed on 2026-02-06 OS build 26100.9106 Experience Windows Feature Experience Pack 1000.26100.334.0
System where issue does not occur: Edition Windows Server 2022 Standard Version 21H2 Installed on 2024-03-21 OS build 20348.5499
Logs and stack traces
Source: vim/vim