#21365·vim

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

  1. gvim -u NONE -U NONE
  2. Define the function: function! Regtest() let i = 10 while i > 0 let i -= 1 let @+ = 'abc' | let @+ = @+ | echo i .. @+ endwhile endfunction
  3. Call Regtest()
  4. 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

bash