Patch 9.0.0766
Problem:    Too many delete() calls in tests.
Solution:   Use deferred delete where possible.
Files:      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_import.vim


*** ../vim-9.0.0765/src/testdir/test_vim9_assign.vim    2022-10-12 
12:58:50.385618448 +0100
--- src/testdir/test_vim9_assign.vim    2022-10-15 19:32:35.029292736 +0100
***************
*** 921,929 ****
        assert_equal(333, v)
        assert_equal(444, w)
    END
!   writefile(lines, 'Xsinglechar')
    source Xsinglechar
-   delete('Xsinglechar')
  enddef
  
  def Test_assignment_list()
--- 921,928 ----
        assert_equal(333, v)
        assert_equal(444, w)
    END
!   writefile(lines, 'Xsinglechar', 'D')
    source Xsinglechar
  enddef
  
  def Test_assignment_list()
***************
*** 1940,1952 ****
      # env var is always a string
      var env = $TERM
    END
!   writefile(lines, 'Xfinished')
    source Xfinished
    # GetValue() is not called during discovery phase
    assert_equal(1, g:count)
  
    unlet g:count
-   delete('Xfinished')
  enddef
  
  def Test_var_missing_type()
--- 1939,1950 ----
      # env var is always a string
      var env = $TERM
    END
!   writefile(lines, 'Xfinished', 'D')
    source Xfinished
    # GetValue() is not called during discovery phase
    assert_equal(1, g:count)
  
    unlet g:count
  enddef
  
  def Test_var_missing_type()
***************
*** 2532,2538 ****
     'DelChangedtick(b:)',
     ], 'E795:')
  
!   writefile(['vim9script', 'export var svar = 1234'], 'XunletExport.vim')
    var lines =<< trim END
      vim9script
      import './XunletExport.vim' as exp
--- 2530,2536 ----
     'DelChangedtick(b:)',
     ], 'E795:')
  
!   writefile(['vim9script', 'export var svar = 1234'], 'XunletExport.vim', 'D')
    var lines =<< trim END
      vim9script
      import './XunletExport.vim' as exp
***************
*** 2542,2548 ****
      defcompile
    END
    v9.CheckScriptFailure(lines, 'E1260:', 1)
-   delete('XunletExport.vim')
  
    $ENVVAR = 'foobar'
    assert_equal('foobar', $ENVVAR)
--- 2540,2545 ----
***************
*** 2701,2711 ****
        var x: string
        x = strpart(1, 2)
    END
!   writefile(lines, 'Xtestscript')
    var expected = 'E1174: String required for argument 1'
    assert_fails('so Xtestscript', [expected, expected], 3)
- 
-   delete('Xtestscript')
  enddef
  
  def Test_using_s_var_in_function()
--- 2698,2706 ----
        var x: string
        x = strpart(1, 2)
    END
!   writefile(lines, 'Xtestscript', 'D')
    var expected = 'E1174: String required for argument 1'
    assert_fails('so Xtestscript', [expected, expected], 3)
  enddef
  
  def Test_using_s_var_in_function()
*** ../vim-9.0.0765/src/testdir/test_vim9_builtin.vim   2022-10-11 
23:12:55.620405012 +0100
--- src/testdir/test_vim9_builtin.vim   2022-10-15 19:33:43.613219589 +0100
***************
*** 12,18 ****
      enddef
      defcompile
    END
!   call writefile(l, 'Xinvalidarg')
    call assert_fails('so Xinvalidarg', 'E118:', '', 1, 'FArgErr')
    let l =<< trim END
      def! FArgErr(): float
--- 12,18 ----
      enddef
      defcompile
    END
!   call writefile(l, 'Xinvalidarg', 'D')
    call assert_fails('so Xinvalidarg', 'E118:', '', 1, 'FArgErr')
    let l =<< trim END
      def! FArgErr(): float
***************
*** 22,28 ****
    END
    call writefile(l, 'Xinvalidarg')
    call assert_fails('so Xinvalidarg', 'E119:', '', 1, 'FArgErr')
-   call delete('Xinvalidarg')
  endfunc
  
  " Test for builtin functions returning different types
--- 22,27 ----
***************
*** 52,58 ****
        return environ()
      enddef
    END
!   call writefile(lines, 'Xscript')
    source Xscript
  
    call RetFloat()->assert_equal(2.0)
--- 51,57 ----
        return environ()
      enddef
    END
!   call writefile(lines, 'Xscript', 'D')
    source Xscript
  
    call RetFloat()->assert_equal(2.0)
***************
*** 61,67 ****
    call RetListDictAny()->assert_notequal([])
    call RetDictNumber()->assert_notequal({})
    call RetDictString()->assert_notequal({})
-   call delete('Xscript')
  endfunc
  
  def Test_abs()
--- 60,65 ----
***************
*** 1984,1990 ****
      def g:Xscript_def_func2()
      enddef
    END
!   writefile(lines1, 'X22script92')
  
    var lines2 =<< trim END
      source X22script92
--- 1982,1988 ----
      def g:Xscript_def_func2()
      enddef
    END
!   writefile(lines1, 'X22script92', 'D')
  
    var lines2 =<< trim END
      source X22script92
***************
*** 2006,2012 ****
      endfor
    END
    v9.CheckDefAndScriptSuccess(lines2)
-   delete('X22script92')
  enddef
  
  def Test_gettabinfo()
--- 2004,2009 ----
***************
*** 3238,3244 ****
  
  def Test_readblob()
    var blob = 0z12341234
!   writefile(blob, 'Xreadblob')
    var read: blob = readblob('Xreadblob')
    assert_equal(blob, read)
  
--- 3235,3241 ----
  
  def Test_readblob()
    var blob = 0z12341234
!   writefile(blob, 'Xreadblob', 'D')
    var read: blob = readblob('Xreadblob')
    assert_equal(blob, read)
  
***************
*** 3247,3258 ****
    END
    v9.CheckDefAndScriptFailure(lines, 'E1012: Type mismatch; expected 
list<string> but got blob', 1)
    v9.CheckDefExecAndScriptFailure(['readblob("")'], 'E484: Can''t open file 
<empty>')
-   delete('Xreadblob')
  enddef
  
  def Test_readfile()
    var text = ['aaa', 'bbb', 'ccc']
!   writefile(text, 'Xreadfile')
    var read: list<string> = readfile('Xreadfile')
    assert_equal(text, read)
    assert_equal([7, 7, 7], readfile('Xreadfile')->map((_, _) => 7))
--- 3244,3254 ----
    END
    v9.CheckDefAndScriptFailure(lines, 'E1012: Type mismatch; expected 
list<string> but got blob', 1)
    v9.CheckDefExecAndScriptFailure(['readblob("")'], 'E484: Can''t open file 
<empty>')
  enddef
  
  def Test_readfile()
    var text = ['aaa', 'bbb', 'ccc']
!   writefile(text, 'Xreadfile', 'D')
    var read: list<string> = readfile('Xreadfile')
    assert_equal(text, read)
    assert_equal([7, 7, 7], readfile('Xreadfile')->map((_, _) => 7))
***************
*** 3261,3267 ****
        var read: dict<string> = readfile('Xreadfile')
    END
    v9.CheckDefAndScriptFailure(lines, 'E1012: Type mismatch; expected 
dict<string> but got list<string>', 1)
-   delete('Xreadfile')
  
    v9.CheckDefAndScriptFailure(['readfile("a", 0z10)'], ['E1013: Argument 2: 
type mismatch, expected string but got blob', 'E1174: String required for 
argument 2'])
    v9.CheckDefAndScriptFailure(['readfile("a", "b", "c")'], ['E1013: Argument 
3: type mismatch, expected number but got string', 'E1210: Number required for 
argument 3'])
--- 3257,3262 ----
***************
*** 4131,4139 ****
      vim9script
      echo ['a', 'b', 'c']->sort((a: number, b: number) => 0)
    END
!   writefile(lines, 'Xbadsort')
    assert_fails('source Xbadsort', ['E1013:', 'E702:'])
-   delete('Xbadsort')
  
    lines =<< trim END
        var l = [1, 2, 3]
--- 4126,4133 ----
      vim9script
      echo ['a', 'b', 'c']->sort((a: number, b: number) => 0)
    END
!   writefile(lines, 'Xbadsort', 'D')
    assert_fails('source Xbadsort', ['E1013:', 'E702:'])
  
    lines =<< trim END
        var l = [1, 2, 3]
***************
*** 4822,4828 ****
          call feedkeys("\<F3>\<LeftMouse>\<LeftRelease>", "xt")
          endfunc
      END
!     call writefile(lines, 'Xgotoscript')
      let buf = RunVimInTerminal('-S Xgotoscript', #{rows: 15, wait_for_ruler: 
0})
      " wait longer here, since we didn't wait for the ruler
      call VerifyScreenDump(buf, 'Test_win_gotoid_1', #{wait: 3000})
--- 4816,4822 ----
          call feedkeys("\<F3>\<LeftMouse>\<LeftRelease>", "xt")
          endfunc
      END
!     call writefile(lines, 'Xgotoscript', 'D')
      let buf = RunVimInTerminal('-S Xgotoscript', #{rows: 15, wait_for_ruler: 
0})
      " wait longer here, since we didn't wait for the ruler
      call VerifyScreenDump(buf, 'Test_win_gotoid_1', #{wait: 3000})
***************
*** 4833,4839 ****
      call VerifyScreenDump(buf, 'Test_win_gotoid_3', {})
  
      call StopVimInTerminal(buf)
-     call delete('Xgotoscript')
    endif
  endfunc
  
--- 4827,4832 ----
*** ../vim-9.0.0765/src/testdir/test_vim9_cmd.vim       2022-09-18 
13:06:36.461124371 +0100
--- src/testdir/test_vim9_cmd.vim       2022-10-15 19:34:20.301180909 +0100
***************
*** 120,131 ****
        vim9script
        export var exported = 'x'
    END
!   writefile(lines, 'Xvim9import.vim')
    lines =<< trim END
        legacy exe "import './Xvim9import.vim'"
    END
    v9.CheckScriptSuccess(lines)
-   delete('Xvim9import.vim')
  
    # "legacy" does not aply to a called function
    lines =<< trim END
--- 120,130 ----
        vim9script
        export var exported = 'x'
    END
!   writefile(lines, 'Xvim9import.vim', 'D')
    lines =<< trim END
        legacy exe "import './Xvim9import.vim'"
    END
    v9.CheckScriptSuccess(lines)
  
    # "legacy" does not aply to a called function
    lines =<< trim END
***************
*** 331,337 ****
  enddef
  
  def Test_syn_include_wildcards()
!   writefile(['syn keyword Found found'], 'Xthemine.vim')
    var save_rtp = &rtp
    &rtp = '.'
  
--- 330,336 ----
  enddef
  
  def Test_syn_include_wildcards()
!   writefile(['syn keyword Found found'], 'Xthemine.vim', 'D')
    var save_rtp = &rtp
    &rtp = '.'
  
***************
*** 340,346 ****
    assert_match('Found.* contained found', execute('syn list Found'))
  
    &rtp = save_rtp
-   delete('Xthemine.vim')
  enddef
  
  def Test_echo_linebreak()
--- 339,344 ----
***************
*** 932,938 ****
        confirm write Xcmodfile
      enddef
    END
!   call writefile(lines, 'Xconfirmscript')
    call writefile(['empty'], 'Xcmodfile')
    let buf = RunVimInTerminal('-S Xconfirmscript', {'rows': 8})
    call term_sendkeys(buf, ":call Getout()\n")
--- 930,936 ----
        confirm write Xcmodfile
      enddef
    END
!   call writefile(lines, 'Xconfirmscript', 'D')
    call writefile(['empty'], 'Xcmodfile')
    let buf = RunVimInTerminal('-S Xconfirmscript', {'rows': 8})
    call term_sendkeys(buf, ":call Getout()\n")
***************
*** 946,952 ****
    call assert_equal(['changed'], readfile('Xcmodfile'))
    call delete('Xcmodfile')
    call delete('.Xcmodfile.swp')  " in case Vim was killed
-   call delete('Xconfirmscript')
  endfunc
  
  def Test_command_modifiers_keep()
--- 944,949 ----
*** ../vim-9.0.0765/src/testdir/test_vim9_disassemble.vim       2022-10-07 
14:31:04.324852691 +0100
--- src/testdir/test_vim9_disassemble.vim       2022-10-15 19:35:43.089094600 
+0100
***************
*** 313,319 ****
  enddef
  
  def Test_disassemble_push()
!   mkdir('Xdisdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xdisdir'
  
--- 313,319 ----
  enddef
  
  def Test_disassemble_push()
!   mkdir('Xdisdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xdisdir'
  
***************
*** 340,351 ****
    END
    v9.CheckScriptSuccess(lines)
  
-   delete('Xdisdir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_disassemble_import_autoload()
!   writefile(['vim9script'], 'XimportAL.vim')
  
    var lines =<< trim END
        vim9script
--- 340,350 ----
    END
    v9.CheckScriptSuccess(lines)
  
    &rtp = save_rtp
  enddef
  
  def Test_disassemble_import_autoload()
!   writefile(['vim9script'], 'XimportAL.vim', 'D')
  
    var lines =<< trim END
        vim9script
***************
*** 380,387 ****
              res)
    END
    v9.CheckScriptSuccess(lines)
- 
-   delete('XimportAL.vim')
  enddef
  
  def s:ScriptFuncStore()
--- 379,384 ----
***************
*** 2440,2446 ****
      enddef
      g:res_FuncOne = execute('disass FuncOne')
    END
!   writefile(lines, 'Xdisassemble')
    source Xdisassemble
  
    # check that the first function calls the second with DCALL
--- 2437,2443 ----
      enddef
      g:res_FuncOne = execute('disass FuncOne')
    END
!   writefile(lines, 'Xdisassemble', 'D')
    source Xdisassemble
  
    # check that the first function calls the second with DCALL
***************
*** 2450,2456 ****
          '\d RETURN',
          g:res_FuncOne)
  
-   delete('Xdisassemble')
    unlet g:res_FuncOne
  enddef
  
--- 2447,2452 ----
***************
*** 2901,2951 ****
  enddef
  
  def Test_disassemble_after_reload()
!     var lines =<< trim END
!         vim9script
!         if exists('g:ThisFunc')
!           finish
!         endif
!         var name: any
!         def g:ThisFunc(): number
!           g:name = name
!           return 0
!         enddef
!         def g:ThatFunc(): number
!           name = g:name
!           return 0
!         enddef
!     END
!     lines->writefile('Xreload.vim')
! 
!     source Xreload.vim
!     g:ThisFunc()
!     g:ThatFunc()
! 
!     source Xreload.vim
!     var res = execute('disass g:ThisFunc')
!     assert_match('ThisFunc\_s*' ..
!           'g:name = name\_s*' ..
!           '\d LOADSCRIPT \[deleted\] from .*/Xreload.vim\_s*' ..
!           '\d STOREG g:name\_s*' ..
!           'return 0\_s*' ..
!           '\d PUSHNR 0\_s*' ..
!           '\d RETURN\_s*',
!           res)
  
!     res = execute('disass g:ThatFunc')
!     assert_match('ThatFunc\_s*' ..
!           'name = g:name\_s*' ..
!           '\d LOADG g:name\_s*' ..
!           '\d STORESCRIPT \[deleted\] in .*/Xreload.vim\_s*' ..
!           'return 0\_s*' ..
!           '\d PUSHNR 0\_s*' ..
!           '\d RETURN\_s*',
!           res)
  
!     delete('Xreload.vim')
!     delfunc g:ThisFunc
!     delfunc g:ThatFunc
  enddef
  
  def s:MakeString(x: number): string
--- 2897,2946 ----
  enddef
  
  def Test_disassemble_after_reload()
!   var lines =<< trim END
!       vim9script
!       if exists('g:ThisFunc')
!         finish
!       endif
!       var name: any
!       def g:ThisFunc(): number
!         g:name = name
!         return 0
!       enddef
!       def g:ThatFunc(): number
!         name = g:name
!         return 0
!       enddef
!   END
!   lines->writefile('Xreload.vim', 'D')
  
!   source Xreload.vim
!   g:ThisFunc()
!   g:ThatFunc()
! 
!   source Xreload.vim
!   var res = execute('disass g:ThisFunc')
!   assert_match('ThisFunc\_s*' ..
!         'g:name = name\_s*' ..
!         '\d LOADSCRIPT \[deleted\] from .*/Xreload.vim\_s*' ..
!         '\d STOREG g:name\_s*' ..
!         'return 0\_s*' ..
!         '\d PUSHNR 0\_s*' ..
!         '\d RETURN\_s*',
!         res)
! 
!   res = execute('disass g:ThatFunc')
!   assert_match('ThatFunc\_s*' ..
!         'name = g:name\_s*' ..
!         '\d LOADG g:name\_s*' ..
!         '\d STORESCRIPT \[deleted\] in .*/Xreload.vim\_s*' ..
!         'return 0\_s*' ..
!         '\d PUSHNR 0\_s*' ..
!         '\d RETURN\_s*',
!         res)
  
!   delfunc g:ThisFunc
!   delfunc g:ThatFunc
  enddef
  
  def s:MakeString(x: number): string
*** ../vim-9.0.0765/src/testdir/test_vim9_expr.vim      2022-09-17 
21:07:52.111993132 +0100
--- src/testdir/test_vim9_expr.vim      2022-10-15 19:36:31.017045222 +0100
***************
*** 3490,3496 ****
    var auto_lines =<< trim END
        let autofile#var = 'found'
    END
!   mkdir('Xruntime/autoload', 'p')
    writefile(auto_lines, 'Xruntime/autoload/autofile.vim')
    var save_rtp = &rtp
    &rtp = getcwd() .. '/Xruntime,' .. &rtp
--- 3490,3496 ----
    var auto_lines =<< trim END
        let autofile#var = 'found'
    END
!   mkdir('Xruntime/autoload', 'pR')
    writefile(auto_lines, 'Xruntime/autoload/autofile.vim')
    var save_rtp = &rtp
    &rtp = getcwd() .. '/Xruntime,' .. &rtp
***************
*** 3506,3512 ****
    v9.CheckDefExecAndScriptFailure(lines, 'E121: Undefined variable: 
autofile#other')
  
    &rtp = save_rtp
-   delete('Xruntime', 'rf')
  enddef
  
  def Test_expr9_call_autoload()
--- 3506,3511 ----
***************
*** 3515,3521 ****
        return 'found'
        enddef
    END
!   mkdir('Xruntime/autoload', 'p')
    writefile(auto_lines, 'Xruntime/autoload/some.vim')
    var save_rtp = &rtp
    &rtp = getcwd() .. '/Xruntime,' .. &rtp
--- 3514,3520 ----
        return 'found'
        enddef
    END
!   mkdir('Xruntime/autoload', 'pR')
    writefile(auto_lines, 'Xruntime/autoload/some.vim')
    var save_rtp = &rtp
    &rtp = getcwd() .. '/Xruntime,' .. &rtp
***************
*** 3523,3529 ****
    assert_equal('found', some#func())
  
    &rtp = save_rtp
-   delete('Xruntime', 'rf')
  enddef
  
  def Test_expr9_method_call()
--- 3522,3527 ----
***************
*** 3640,3646 ****
            return map(items, (_, i) => i * i)
        enddef
    END
!   call writefile(lines, 'Xsquare.vim')
  
    lines =<< trim END
        vim9script
--- 3638,3644 ----
            return map(items, (_, i) => i * i)
        enddef
    END
!   call writefile(lines, 'Xsquare.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 3663,3670 ****
        echo range(5)->Xsquare.NoSuchFunc()
    END
    v9.CheckScriptFailure(lines, 'E1048: Item not found in script: NoSuchFunc')
- 
-   delete('Xsquare.vim')
  enddef
  
  
--- 3661,3666 ----
*** ../vim-9.0.0765/src/testdir/test_vim9_import.vim    2022-10-13 
17:47:38.123364593 +0100
--- src/testdir/test_vim9_import.vim    2022-10-15 20:01:55.876507070 +0100
***************
*** 39,45 ****
  enddef
  
  def Test_vim9_import_export()
!   writefile(s:export_script_lines, 'Xexport.vim')
    var import_script_lines =<< trim END
      vim9script
      var dir = './'
--- 39,45 ----
  enddef
  
  def Test_vim9_import_export()
!   writefile(s:export_script_lines, 'Xexport.vim', 'D')
    var import_script_lines =<< trim END
      vim9script
      var dir = './'
***************
*** 84,90 ****
      assert_equal('andthensome', 'andthen'->expo.AddSome())
      assert_equal('awesome', 'awe'->expo.AddRef())
    END
!   writefile(import_script_lines, 'Ximport.vim')
    source Ximport.vim
  
    assert_equal('bobbie', g:result)
--- 84,90 ----
      assert_equal('andthensome', 'andthen'->expo.AddSome())
      assert_equal('awesome', 'awe'->expo.AddRef())
    END
!   writefile(import_script_lines, 'Ximport.vim', 'D')
    source Ximport.vim
  
    assert_equal('bobbie', g:result)
***************
*** 380,388 ****
    writefile(import_assign_const_lines, 'Ximport.vim')
    assert_fails('source Ximport.vim', 'E46: Cannot change read-only variable 
"CONST"', '', 3)
  
-   delete('Ximport.vim')
-   delete('Xexport.vim')
- 
    # Check that in a Vim9 script 'cpo' is set to the Vim default.
    # Flags added or removed are also applied to the restored value.
    set cpo=abcd
--- 380,385 ----
***************
*** 393,399 ****
      set cpo-=c
      g:cpo_after_vim9script = &cpo
    END
!   writefile(lines, 'Xvim9_script')
    source Xvim9_script
    assert_equal('fabd', &cpo)
    set cpo&vim
--- 390,396 ----
      set cpo-=c
      g:cpo_after_vim9script = &cpo
    END
!   writefile(lines, 'Xvim9_script', 'D')
    source Xvim9_script
    assert_equal('fabd', &cpo)
    set cpo&vim
***************
*** 410,416 ****
  
        export var 
verylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongname
 = 'asdf'
    END
!   writefile(lines, 'Xverylong.vim')
  
    lines =<< trim END
        vim9script
--- 407,413 ----
  
        export var 
verylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongnameverylongname
 = 'asdf'
    END
!   writefile(lines, 'Xverylong.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 421,427 ****
    v9.CheckScriptSuccess(lines)
    assert_equal('asdf', g:result)
  
-   delete('Xverylong.vim')
    unlet g:result
  enddef
  
--- 418,423 ----
***************
*** 433,439 ****
        enddef
        export const G = F
    END
!   writefile(lines, 'Xlib.vim')
  
    lines =<< trim END
        vim9script
--- 429,435 ----
        enddef
        export const G = F
    END
!   writefile(lines, 'Xlib.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 448,455 ****
        DoTest()
    END
    v9.CheckScriptSuccess(lines)
- 
-   delete('Xlib.vim')
  enddef
  
  def Test_export_closure()
--- 444,449 ----
***************
*** 485,491 ****
  
        NewLspServer()
    END
!   writefile(lines, 'Xserver.vim')
  
    lines =<< trim END
        vim9script
--- 479,485 ----
  
        NewLspServer()
    END
!   writefile(lines, 'Xserver.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 502,514 ****
        AddServer()
    END
    v9.CheckScriptSuccess(lines)
- 
-   delete('Xserver.vim')
  enddef
  
  
  def Test_import_fails()
!   writefile([], 'Xfoo.vim')
    var lines =<< trim END
        import './Xfoo.vim' as foo
        foo = 'bar'
--- 496,506 ----
        AddServer()
    END
    v9.CheckScriptSuccess(lines)
  enddef
  
  
  def Test_import_fails()
!   writefile([], 'Xfoo.vim', 'D')
    var lines =<< trim END
        import './Xfoo.vim' as foo
        foo = 'bar'
***************
*** 588,598 ****
        export var item = 'hello'
        import './Xyourself.vim'
    END
!   writefile(lines, 'Xyourself.vim')
    assert_fails('source Xyourself.vim', 'E1088:')
-   delete('Xyourself.vim')
  
!   mkdir('Ximport')
  
    writefile(['vim9script'], 'Ximport/.vim')
    lines =<< trim END
--- 580,589 ----
        export var item = 'hello'
        import './Xyourself.vim'
    END
!   writefile(lines, 'Xyourself.vim', 'D')
    assert_fails('source Xyourself.vim', 'E1088:')
  
!   mkdir('Ximport', 'R')
  
    writefile(['vim9script'], 'Ximport/.vim')
    lines =<< trim END
***************
*** 635,643 ****
    call writefile(['vim9script', "import './Xfoo.vim' as abc | foobar"], 
'Xbar.vim')
    assert_fails('source Xbar.vim', 'E492: Not an editor command:  foobar')
    call delete('Xbar.vim')
- 
-   delete('Ximport', 'rf')
-   delete('Xfoo.vim')
  enddef
  
  func g:Trigger()
--- 626,631 ----
***************
*** 653,678 ****
        return 'yes'
      enddef
    END
!   writefile(export_lines, 'Xexport_that.vim')
  
    var import_lines =<< trim END
      vim9script
      import './Xexport_that.vim' as that
      assert_equal('yes', that.That())
    END
!   writefile(import_lines, 'Ximport.vim')
  
    nnoremap <expr> trigger g:Trigger()
    feedkeys('trigger', "xt")
  
-   delete('Xexport_that.vim')
-   delete('Ximport.vim')
    nunmap trigger
  enddef
  
  def Test_import_in_filetype()
    # check that :import works when the buffer is locked
!   mkdir('ftplugin', 'p')
    var export_lines =<< trim END
      vim9script
      export var That = 'yes'
--- 641,664 ----
        return 'yes'
      enddef
    END
!   writefile(export_lines, 'Xexport_that.vim', 'D')
  
    var import_lines =<< trim END
      vim9script
      import './Xexport_that.vim' as that
      assert_equal('yes', that.That())
    END
!   writefile(import_lines, 'Ximport.vim', 'D')
  
    nnoremap <expr> trigger g:Trigger()
    feedkeys('trigger', "xt")
  
    nunmap trigger
  enddef
  
  def Test_import_in_filetype()
    # check that :import works when the buffer is locked
!   mkdir('ftplugin', 'pR')
    var export_lines =<< trim END
      vim9script
      export var That = 'yes'
***************
*** 695,702 ****
    assert_equal(1, g:did_load_mytpe)
  
    quit!
-   delete('Xexport_ft.vim')
-   delete('ftplugin', 'rf')
    &rtp = save_rtp
  enddef
  
--- 681,686 ----
***************
*** 707,713 ****
          g:result = nr
        enddef
    END
!   writefile(lines, 'XsomeExport.vim')
    lines =<< trim END
        vim9script
        import './XsomeExport.vim' as some
--- 691,697 ----
          g:result = nr
        enddef
    END
!   writefile(lines, 'XsomeExport.vim', 'D')
    lines =<< trim END
        vim9script
        import './XsomeExport.vim' as some
***************
*** 715,721 ****
        nnoremap <F3> :call <sid>Funcy(42)<cr>
        nnoremap <F4> :call <sid>some.Funcx(44)<cr>
    END
!   writefile(lines, 'Xmapscript.vim')
  
    source Xmapscript.vim
    feedkeys("\<F3>", "xt")
--- 699,705 ----
        nnoremap <F3> :call <sid>Funcy(42)<cr>
        nnoremap <F4> :call <sid>some.Funcx(44)<cr>
    END
!   writefile(lines, 'Xmapscript.vim', 'D')
  
    source Xmapscript.vim
    feedkeys("\<F3>", "xt")
***************
*** 724,731 ****
    assert_equal(44, g:result)
  
    unlet g:result
-   delete('XsomeExport.vim')
-   delete('Xmapscript.vim')
    nunmap <F3>
    nunmap <F4>
  enddef
--- 708,713 ----
***************
*** 737,749 ****
          g:result = 42
        enddef
    END
!   writefile(lines, 'XrelautoloadExport.vim')
    lines =<< trim END
        vim9script
        import autoload './XrelautoloadExport.vim' as some
        nnoremap <F3> :call <SID>some.Func()<CR>
    END
!   writefile(lines, 'Xmapscript.vim')
  
    source Xmapscript.vim
    assert_match('\d\+ A: .*XrelautoloadExport.vim', 
execute('scriptnames')->split("\n")[-1])
--- 719,731 ----
          g:result = 42
        enddef
    END
!   writefile(lines, 'XrelautoloadExport.vim', 'D')
    lines =<< trim END
        vim9script
        import autoload './XrelautoloadExport.vim' as some
        nnoremap <F3> :call <SID>some.Func()<CR>
    END
!   writefile(lines, 'Xmapscript.vim', 'D')
  
    source Xmapscript.vim
    assert_match('\d\+ A: .*XrelautoloadExport.vim', 
execute('scriptnames')->split("\n")[-1])
***************
*** 759,766 ****
    assert_equal(999999, l[0].version)
  
    unlet g:result
-   delete('XrelautoloadExport.vim')
-   delete('Xmapscript.vim')
    nunmap <F3>
  enddef
  
--- 741,746 ----
***************
*** 781,787 ****
          g:result = 49
        enddef
    END
!   mkdir('Ximpdir/autoload', 'p')
    writefile(lines, 'Ximpdir/autoload/XautoloadExport.vim')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Ximpdir'
--- 761,767 ----
          g:result = 49
        enddef
    END
!   mkdir('Ximpdir/autoload', 'pR')
    writefile(lines, 'Ximpdir/autoload/XautoloadExport.vim')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Ximpdir'
***************
*** 791,797 ****
        import autoload 'XautoloadExport.vim' as some
        nnoremap <F3> :call <SID>some.Func()<CR>
    END
!   writefile(lines, 'Xmapscript.vim')
  
    source Xmapscript.vim
    assert_match('\d\+ A: .*autoload/XautoloadExport.vim', 
execute('scriptnames')->split("\n")[-1])
--- 771,777 ----
        import autoload 'XautoloadExport.vim' as some
        nnoremap <F3> :call <SID>some.Func()<CR>
    END
!   writefile(lines, 'Xmapscript.vim', 'D')
  
    source Xmapscript.vim
    assert_match('\d\+ A: .*autoload/XautoloadExport.vim', 
execute('scriptnames')->split("\n")[-1])
***************
*** 799,807 ****
    assert_equal(49, g:result)
  
    unlet g:result
-   delete('Xmapscript.vim')
    nunmap <F3>
-   delete('Ximpdir', 'rf')
    &rtp = save_rtp
  enddef
  
--- 779,785 ----
***************
*** 812,818 ****
          return ['abcd']
        enddef
    END
!   writefile(lines, 'Xscript.vim')
  
    lines =<< trim END
        vim9script
--- 790,796 ----
          return ['abcd']
        enddef
    END
!   writefile(lines, 'Xscript.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 825,831 ****
    v9.CheckScriptSuccess(lines)
  
    delcommand Cmd
-   delete('Xscript.vim')
  enddef
  
  def Test_use_import_with_funcref_in_command_completion()
--- 803,808 ----
***************
*** 835,841 ****
          return ['abcd']
        enddef
    END
!   writefile(lines, 'Xscript.vim')
  
    lines =<< trim END
        vim9script
--- 812,818 ----
          return ['abcd']
        enddef
    END
!   writefile(lines, 'Xscript.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 849,859 ****
    v9.CheckScriptSuccess(lines)
  
    delcommand Cmd
-   delete('Xscript.vim')
  enddef
  
  def Test_use_autoload_import_in_insert_completion()
!   mkdir('Xinsdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xinsdir'
  
--- 826,835 ----
    v9.CheckScriptSuccess(lines)
  
    delcommand Cmd
  enddef
  
  def Test_use_autoload_import_in_insert_completion()
!   mkdir('Xinsdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xinsdir'
  
***************
*** 889,900 ****
  
    set thesaurusfunc=
    bwipe!
-   delete('Xinsdir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_use_autoload_import_partial_in_opfunc()
!   mkdir('Xpartdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xpartdir'
  
--- 865,875 ----
  
    set thesaurusfunc=
    bwipe!
    &rtp = save_rtp
  enddef
  
  def Test_use_autoload_import_partial_in_opfunc()
!   mkdir('Xpartdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xpartdir'
  
***************
*** 922,934 ****
  
    set opfunc=
    bwipe!
-   delete('Xpartdir', 'rf')
    nunmap <F3>
    &rtp = save_rtp
  enddef
  
  def Test_set_opfunc_to_autoload_func_directly()
!   mkdir('Xdirdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xdirdir'
  
--- 897,908 ----
  
    set opfunc=
    bwipe!
    nunmap <F3>
    &rtp = save_rtp
  enddef
  
  def Test_set_opfunc_to_autoload_func_directly()
!   mkdir('Xdirdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xdirdir'
  
***************
*** 956,968 ****
  
    set opfunc=
    bwipe!
-   delete('Xdirdir', 'rf')
    nunmap <F3>
    &rtp = save_rtp
  enddef
  
  def Test_use_autoload_import_in_fold_expression()
!   mkdir('Xfolddir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xfolddir'
  
--- 930,941 ----
  
    set opfunc=
    bwipe!
    nunmap <F3>
    &rtp = save_rtp
  enddef
  
  def Test_use_autoload_import_in_fold_expression()
!   mkdir('Xfolddir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xfolddir'
  
***************
*** 1000,1006 ****
  
    set foldexpr= foldtext& foldmethod& debug=
    bwipe!
-   delete('Xfolddir', 'rf')
    &rtp = save_rtp
  enddef
  
--- 973,978 ----
***************
*** 1019,1029 ****
        export var someText = 'some text'
        var notexp = 'bad'
    END
!   writefile(lines, 'XimportRel.vim')
!   writefile(lines, 'XimportRel2.vim')
!   writefile(lines, 'XimportRel3.vim')
!   writefile(lines, 'XimportRel4.vim')
!   writefile(lines, 'XimportRel5.vim')
  
    lines =<< trim END
        vim9script
--- 991,1001 ----
        export var someText = 'some text'
        var notexp = 'bad'
    END
!   writefile(lines, 'XimportRel.vim', 'D')
!   writefile(lines, 'XimportRel2.vim', 'D')
!   writefile(lines, 'XimportRel3.vim', 'D')
!   writefile(lines, 'XimportRel4.vim', 'D')
!   writefile(lines, 'XimportRel5.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1166,1181 ****
        DoIt()
    END
    v9.CheckScriptFailure(lines, 'E484:')
- 
-   delete('XimportRel.vim')
-   delete('XimportRel2.vim')
-   delete('XimportRel3.vim')
-   delete('XimportRel4.vim')
-   delete('XimportRel5.vim')
  enddef
  
  def Test_autoload_import_relative_autoload_dir()
!   mkdir('autoload', 'p')
    var lines =<< trim END
        vim9script
        export def Bar()
--- 1138,1147 ----
        DoIt()
    END
    v9.CheckScriptFailure(lines, 'E484:')
  enddef
  
  def Test_autoload_import_relative_autoload_dir()
!   mkdir('autoload', 'pR')
    var lines =<< trim END
        vim9script
        export def Bar()
***************
*** 1196,1202 ****
    v9.CheckScriptSuccess(lines)
  
    unlet g:called_bar
-   delete('autoload', 'rf')
  enddef
  
  def Test_autoload_import_deleted()
--- 1162,1167 ----
***************
*** 1204,1210 ****
        vim9script
        export const FOO = 1
    END
!   writefile(lines, 'Xa.vim')
  
    lines =<< trim END
        vim9script
--- 1169,1175 ----
        vim9script
        export const FOO = 1
    END
!   writefile(lines, 'Xa.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1214,1221 ****
        var x = Xa.FOO
    END
    v9.CheckScriptFailure(lines, 'E484:')
- 
-   delete('Xa.vim')
  enddef
  
  def Test_autoload_import_using_const()
--- 1179,1184 ----
***************
*** 1255,1261 ****
                              .. v:fname_new .. '>>' .. v:fname_out
        enddef
    END
!   writefile(lines, 'Xdiffexpr')
  
    lines =<< trim END
        vim9script
--- 1218,1224 ----
                              .. v:fname_new .. '>>' .. v:fname_out
        enddef
    END
!   writefile(lines, 'Xdiffexpr', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1281,1287 ****
    set diffopt&
    bwipe!
    bwipe!
-   delete('Xdiffexpr')
  enddef
  
  def Test_import_in_patchexpr()
--- 1244,1249 ----
***************
*** 1291,1297 ****
        call writefile(['output file'], v:fname_out)
      enddef
    END
!   writefile(lines, 'Xpatchexpr')
  
    lines =<< trim END
        vim9script
--- 1253,1259 ----
        call writefile(['output file'], v:fname_out)
      enddef
    END
!   writefile(lines, 'Xpatchexpr', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1300,1315 ****
    END
    v9.CheckScriptSuccess(lines)
  
!   call writefile(['input file'], 'Xinput')
!   call writefile(['diff file'], 'Xdiff')
    :%bwipe!
    edit Xinput
    diffpatch Xdiff
    call assert_equal('output file', getline(1))
  
-   call delete('Xinput')
-   call delete('Xdiff')
-   call delete('Xpatchexpr')
    set patchexpr&
    :%bwipe!
  enddef
--- 1262,1274 ----
    END
    v9.CheckScriptSuccess(lines)
  
!   call writefile(['input file'], 'Xinput', 'D')
!   call writefile(['diff file'], 'Xdiff', 'D')
    :%bwipe!
    edit Xinput
    diffpatch Xdiff
    call assert_equal('output file', getline(1))
  
    set patchexpr&
    :%bwipe!
  enddef
***************
*** 1322,1328 ****
          return 0
        enddef
    END
!   writefile(lines, 'Xformatter')
  
    lines =<< trim END
        vim9script
--- 1281,1287 ----
          return 0
        enddef
    END
!   writefile(lines, 'Xformatter', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1337,1349 ****
    assert_equal('yes', g:did_format)
  
    bwipe!
-   delete('Xformatter')
    unlet g:did_format
    set formatexpr=
  enddef
  
  def Test_import_in_includeexpr()
!   writefile(['found it'], 'Xthisfile')
    new
  
    var lines =<< trim END
--- 1296,1307 ----
    assert_equal('yes', g:did_format)
  
    bwipe!
    unlet g:did_format
    set formatexpr=
  enddef
  
  def Test_import_in_includeexpr()
!   writefile(['found it'], 'Xthisfile', 'D')
    new
  
    var lines =<< trim END
***************
*** 1352,1358 ****
          return substitute(v:fname, 'that', 'this', '')
        enddef
    END
!   writefile(lines, 'Xinclude.vim')
  
    lines =<< trim END
      vim9script
--- 1310,1316 ----
          return substitute(v:fname, 'that', 'this', '')
        enddef
    END
!   writefile(lines, 'Xinclude.vim', 'D')
  
    lines =<< trim END
      vim9script
***************
*** 1368,1375 ****
    bwipe!
    bwipe!
    set includeexpr=
-   delete('Xinclude.vim')
-   delete('Xthisfile')
  enddef
  
  def Test_import_in_indentexpr()
--- 1326,1331 ----
***************
*** 1379,1385 ****
          return 5
        enddef
    END
!   writefile(lines, 'Xindenter')
  
    lines =<< trim END
        vim9script
--- 1335,1341 ----
          return 5
        enddef
    END
!   writefile(lines, 'Xindenter', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1396,1402 ****
  
    bwipe!
    set indentexpr= debug=
-   delete('Xindenter')
  enddef
  
  func Test_import_in_printexpr()
--- 1352,1357 ----
***************
*** 1413,1419 ****
          return false
        enddef
    END
!   writefile(lines, 'Xprint.vim')
  
    lines =<< trim END
        vim9script
--- 1368,1374 ----
          return false
        enddef
    END
!   writefile(lines, 'Xprint.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1426,1432 ****
    hardcopy dummy args
    assert_equal('yes', g:printed)
  
-   delete('Xprint.vim')
    set printexpr=
  enddef
  
--- 1381,1386 ----
***************
*** 1440,1446 ****
          return false  # success
        enddef
    END
!   writefile(lines, 'Xconvert.vim')
  
    lines =<< trim END
        vim9script
--- 1394,1400 ----
          return false  # success
        enddef
    END
!   writefile(lines, 'Xconvert.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1449,1462 ****
    END
    v9.CheckScriptSuccess(lines)
  
!   writefile(['one', 'two'], 'Xiicfile')
    new Xiicfile
    write ++enc=ucase Xiicfile1
    assert_equal(['ONE', 'TWO'], readfile('Xiicfile1'))
  
-   delete('Xiicfile')
    delete('Xiicfile1')
-   delete('Xconvert.vim')
    bwipe!
    set charconvert&
  enddef
--- 1403,1414 ----
    END
    v9.CheckScriptSuccess(lines)
  
!   writefile(['one', 'two'], 'Xiicfile', 'D')
    new Xiicfile
    write ++enc=ucase Xiicfile1
    assert_equal(['ONE', 'TWO'], readfile('Xiicfile1'))
  
    delete('Xiicfile1')
    bwipe!
    set charconvert&
  enddef
***************
*** 1473,1479 ****
          return [['Fox', 8], ['Fop', 9]]
        enddef
    END
!   writefile(lines, 'Xsuggest.vim')
  
    lines =<< trim END
        vim9script
--- 1425,1431 ----
          return [['Fox', 8], ['Fop', 9]]
        enddef
    END
!   writefile(lines, 'Xsuggest.vim', 'D')
  
    lines =<< trim END
        vim9script
***************
*** 1485,1491 ****
    set verbose=1  # report errors
    call assert_equal(['Fox', 'Fop'], spellsuggest('Fo', 2))
  
-   delete('Xsuggest.vim')
    set nospell spellsuggest& verbose=0
  enddef
  
--- 1437,1442 ----
***************
*** 1496,1502 ****
          return e
        enddef
    END
!   writefile(lines, 'XexportRetarg.vim')
    lines =<< trim END
        vim9script
        import './XexportRetarg.vim'
--- 1447,1453 ----
          return e
        enddef
    END
!   writefile(lines, 'XexportRetarg.vim', 'D')
    lines =<< trim END
        vim9script
        import './XexportRetarg.vim'
***************
*** 1507,1518 ****
        assert_equal('arg', Lambda())
    END
    v9.CheckScriptSuccess(lines)
- 
-   delete('XexportRetarg.vim')
  enddef
  
  def Test_export_shadows_global_function()
!   mkdir('Xglobdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xglobdir'
  
--- 1458,1467 ----
        assert_equal('arg', Lambda())
    END
    v9.CheckScriptSuccess(lines)
  enddef
  
  def Test_export_shadows_global_function()
!   mkdir('Xglobdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xglobdir'
  
***************
*** 1538,1544 ****
  
    delfunc g:Shadow
    bwipe!
-   delete('Xglobdir', 'rf')
    &rtp = save_rtp
  enddef
  
--- 1487,1492 ----
***************
*** 1565,1577 ****
          return 0
      enddef
    END
!   writefile(export, 'XexportCmd.vim')
  
    var buf = g:RunVimInTerminal('-c "import Foo from ''./XexportCmd.vim''"', {
                  rows: 6, wait_for_ruler: 0})
    g:WaitForAssert(() => assert_match('^E1094:', term_getline(buf, 5)))
  
-   delete('XexportCmd.vim')
    g:StopVimInTerminal(buf)
  enddef
  
--- 1513,1524 ----
          return 0
      enddef
    END
!   writefile(export, 'XexportCmd.vim', 'D')
  
    var buf = g:RunVimInTerminal('-c "import Foo from ''./XexportCmd.vim''"', {
                  rows: 6, wait_for_ruler: 0})
    g:WaitForAssert(() => assert_match('^E1094:', term_getline(buf, 5)))
  
    g:StopVimInTerminal(buf)
  enddef
  
***************
*** 1583,1589 ****
      export def TheFunc(x = 0)
      enddef
    END
!   writefile(lines, 'XExportReload')
    lines =<< trim END
      vim9script noclear
      g:loadCount += 1
--- 1530,1536 ----
      export def TheFunc(x = 0)
      enddef
    END
!   writefile(lines, 'XExportReload', 'D')
    lines =<< trim END
      vim9script noclear
      g:loadCount += 1
***************
*** 1609,1615 ****
        return 'once'
      enddef
    END
!   writefile(lines, 'XReloaded')
    g:loadCount = 0
    source XReloaded
    assert_equal(1, g:loadCount)
--- 1556,1562 ----
        return 'once'
      enddef
    END
!   writefile(lines, 'XReloaded', 'D')
    g:loadCount = 0
    source XReloaded
    assert_equal(1, g:loadCount)
***************
*** 1621,1628 ****
    assert_equal(3, g:loadCount)
    assert_equal(['init', 'yes', 'again', 'once', 'thexport'], g:Values())
  
-   delete('XReloaded')
-   delete('XExportReload')
    delfunc g:Values
    unlet g:loadCount
  
--- 1568,1573 ----
***************
*** 1631,1637 ****
        def Inner()
        enddef
    END
!   lines->writefile('XreloadScript.vim')
    source XreloadScript.vim
  
    lines =<< trim END
--- 1576,1582 ----
        def Inner()
        enddef
    END
!   lines->writefile('XreloadScript.vim', 'D')
    source XreloadScript.vim
  
    lines =<< trim END
***************
*** 1644,1651 ****
    END
    lines->writefile('XreloadScript.vim')
    source XreloadScript.vim
- 
-   delete('XreloadScript.vim')
  enddef
  
  def Test_vim_reload_noclear_arg_count()
--- 1589,1594 ----
***************
*** 1668,1674 ****
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScript_1.vim')
    source XreloadScript_1.vim
    assert_fails('source XreloadScript_1.vim', 'E1106: One argument too many')
    unlet g:didload
--- 1611,1617 ----
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScript_1.vim', 'D')
    source XreloadScript_1.vim
    assert_fails('source XreloadScript_1.vim', 'E1106: One argument too many')
    unlet g:didload
***************
*** 1692,1698 ****
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScript_2.vim')
    source XreloadScript_2.vim
    assert_fails('source XreloadScript_2.vim', 'E1106: 2 arguments too many')
    unlet g:didload
--- 1635,1641 ----
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScript_2.vim', 'D')
    source XreloadScript_2.vim
    assert_fails('source XreloadScript_2.vim', 'E1106: 2 arguments too many')
    unlet g:didload
***************
*** 1716,1722 ****
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScript_3.vim')
    source XreloadScript_3.vim
    assert_fails('source XreloadScript_3.vim', 'E1190: One argument too few')
    unlet g:didload
--- 1659,1665 ----
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScript_3.vim', 'D')
    source XreloadScript_3.vim
    assert_fails('source XreloadScript_3.vim', 'E1190: One argument too few')
    unlet g:didload
***************
*** 1740,1754 ****
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScript_4.vim')
    source XreloadScript_4.vim
    assert_fails('source XreloadScript_4.vim', 'E1190: 2 arguments too few')
    unlet g:didload
- 
-   delete('XreloadScript_1.vim')
-   delete('XreloadScript_2.vim')
-   delete('XreloadScript_3.vim')
-   delete('XreloadScript_4.vim')
  enddef
  
  def Test_vim9_reload_noclear_error()
--- 1683,1692 ----
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScript_4.vim', 'D')
    source XreloadScript_4.vim
    assert_fails('source XreloadScript_4.vim', 'E1190: 2 arguments too few')
    unlet g:didload
  enddef
  
  def Test_vim9_reload_noclear_error()
***************
*** 1771,1782 ****
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScriptErr.vim')
    source XreloadScriptErr.vim
    assert_fails('source XreloadScriptErr.vim', 'E1001: Variable not found: ax')
  
    unlet g:didload
-   delete('XreloadScriptErr.vim')
  enddef
  
  def Test_vim9_reload_import()
--- 1709,1719 ----
        Call()
        g:didload = 1
    END
!   lines->writefile('XreloadScriptErr.vim', 'D')
    source XreloadScriptErr.vim
    assert_fails('source XreloadScriptErr.vim', 'E1001: Variable not found: ax')
  
    unlet g:didload
  enddef
  
  def Test_vim9_reload_import()
***************
*** 1794,1800 ****
        return valtwo
      enddef
    END
!   writefile(lines + morelines, 'Xreload.vim')
    source Xreload.vim
    source Xreload.vim
    source Xreload.vim
--- 1731,1737 ----
        return valtwo
      enddef
    END
!   writefile(lines + morelines, 'Xreload.vim', 'D')
    source Xreload.vim
    source Xreload.vim
    source Xreload.vim
***************
*** 1808,1814 ****
    writefile(lines, 'Xreload.vim')
    assert_fails('source Xreload.vim', 'E1041:', '', 3, 'Xreload.vim')
  
-   delete('Xreload.vim')
    delete('Ximport.vim')
  enddef
  
--- 1745,1750 ----
***************
*** 1822,1828 ****
        return str .. 'xxx'
      enddef
    END
!   writefile(lines, 'Xreload.vim')
    source Xreload.vim
    echo g:GetStr()
  
--- 1758,1764 ----
        return str .. 'xxx'
      enddef
    END
!   writefile(lines, 'Xreload.vim', 'D')
    source Xreload.vim
    echo g:GetStr()
  
***************
*** 1835,1841 ****
    assert_fails('echo g:GetStr()', 'E1150:')
  
    delfunc g:GetStr
-   delete('Xreload.vim')
  enddef
  
  " Define CallFunc so that the test can be compiled
--- 1771,1776 ----
***************
*** 1856,1867 ****
          g:didTheFunc = 1
        enddef
    END
!   writefile(lines, 'XreloadFunc.vim')
    source XreloadFunc.vim
    CallFunc
    assert_equal(1, g:didTheFunc)
  
-   delete('XreloadFunc.vim')
    delcommand CallFunc
    unlet g:loadedThis
    unlet g:didTheFunc
--- 1791,1801 ----
          g:didTheFunc = 1
        enddef
    END
!   writefile(lines, 'XreloadFunc.vim', 'D')
    source XreloadFunc.vim
    CallFunc
    assert_equal(1, g:didTheFunc)
  
    delcommand CallFunc
    unlet g:loadedThis
    unlet g:didTheFunc
***************
*** 1888,1894 ****
          return arg
        enddef
    END
!   writefile(sortlines, 'Xsort.vim')
  
    var lines =<< trim END
      vim9script
--- 1822,1828 ----
          return arg
        enddef
    END
!   writefile(sortlines, 'Xsort.vim', 'D')
  
    var lines =<< trim END
      vim9script
***************
*** 1898,1904 ****
      enddef
      Test()
    END
!   writefile(lines, 'Xscript.vim')
    source Xscript.vim
    assert_equal([4, 3, 2, 1, 0], g:result)
    unlet g:result
--- 1832,1838 ----
      enddef
      Test()
    END
!   writefile(lines, 'Xscript.vim', 'D')
    source Xscript.vim
    assert_equal([4, 3, 2, 1, 0], g:result)
    unlet g:result
***************
*** 1921,1929 ****
    END
    writefile(lines, 'Xscript.vim')
  
-   delete('Xsort.vim')
-   delete('Xscript.vim')
- 
    var Funcref = function('s:RetSome')
    assert_equal('some', Funcref())
  enddef
--- 1855,1860 ----
***************
*** 1944,1950 ****
        return range(10)->filter(FilterFunc)
      enddef
    END
!   writefile(filterLines, 'Xfilter.vim')
  
    var lines =<< trim END
      vim9script
--- 1875,1881 ----
        return range(10)->filter(FilterFunc)
      enddef
    END
!   writefile(filterLines, 'Xfilter.vim', 'D')
  
    var lines =<< trim END
      vim9script
***************
*** 1959,1965 ****
      TestDirect()
    END
    v9.CheckScriptSuccess(lines)
-   delete('Xfilter.vim')
  enddef
  
  def Test_import_absolute()
--- 1890,1895 ----
***************
*** 1974,1981 ****
          'UseExported()',
          'g:import_disassembled = execute("disass UseExported")',
          ]
!   writefile(import_lines, 'Ximport_abs.vim')
!   writefile(s:export_script_lines, 'Xexport_abs.vim')
  
    source Ximport_abs.vim
  
--- 1904,1911 ----
          'UseExported()',
          'g:import_disassembled = execute("disass UseExported")',
          ]
!   writefile(import_lines, 'Ximport_abs.vim', 'D')
!   writefile(s:export_script_lines, 'Xexport_abs.vim', 'D')
  
    source Ximport_abs.vim
  
***************
*** 1996,2004 ****
    Undo_export_script_lines()
    unlet g:imported_abs
    unlet g:import_disassembled
- 
-   delete('Ximport_abs.vim')
-   delete('Xexport_abs.vim')
  enddef
  
  def Test_import_rtp()
--- 1926,1931 ----
***************
*** 2007,2014 ****
          'import "Xexport_rtp.vim" as rtp',
          'g:imported_rtp = rtp.exported',
          ]
!   writefile(import_lines, 'Ximport_rtp.vim')
!   mkdir('import', 'p')
    writefile(s:export_script_lines, 'import/Xexport_rtp.vim')
  
    var save_rtp = &rtp
--- 1934,1941 ----
          'import "Xexport_rtp.vim" as rtp',
          'g:imported_rtp = rtp.exported',
          ]
!   writefile(import_lines, 'Ximport_rtp.vim', 'D')
!   mkdir('import', 'pR')
    writefile(s:export_script_lines, 'import/Xexport_rtp.vim')
  
    var save_rtp = &rtp
***************
*** 2020,2027 ****
  
    Undo_export_script_lines()
    unlet g:imported_rtp
-   delete('Ximport_rtp.vim')
-   delete('import', 'rf')
  enddef
  
  def Test_import_compile_error()
--- 1947,1952 ----
***************
*** 2031,2037 ****
          '  return notDefined',
          'enddef',
          ]
!   writefile(export_lines, 'Xexported.vim')
  
    var import_lines = [
          'vim9script',
--- 1956,1962 ----
          '  return notDefined',
          'enddef',
          ]
!   writefile(export_lines, 'Xexported.vim', 'D')
  
    var import_lines = [
          'vim9script',
***************
*** 2041,2047 ****
          'enddef',
          'defcompile',
          ]
!   writefile(import_lines, 'Ximport.vim')
  
    try
      source Ximport.vim
--- 1966,1972 ----
          'enddef',
          'defcompile',
          ]
!   writefile(import_lines, 'Ximport.vim', 'D')
  
    try
      source Ximport.vim
***************
*** 2050,2058 ****
      assert_match('E1001: Variable not found: notDefined', v:exception)
      assert_match('function <SNR>\d\+_ImpFunc\[1\]..<SNR>\d\+_ExpFunc, line 
1', v:throwpoint)
    endtry
- 
-   delete('Xexported.vim')
-   delete('Ximport.vim')
  enddef
  
  def Test_func_overrules_import_fails()
--- 1975,1980 ----
***************
*** 2062,2068 ****
          echo 'imported'
        enddef
    END
!   writefile(export_lines, 'XexportedFunc.vim')
  
    var lines =<< trim END
      vim9script
--- 1984,1990 ----
          echo 'imported'
        enddef
    END
!   writefile(export_lines, 'XexportedFunc.vim', 'D')
  
    var lines =<< trim END
      vim9script
***************
*** 2084,2091 ****
      defcompile
    END
    v9.CheckScriptFailure(lines, 'E1236:')
- 
-   delete('XexportedFunc.vim')
  enddef
  
  def Test_source_vim9_from_legacy()
--- 2006,2011 ----
***************
*** 2098,2104 ****
         return 'text'
      enddef
    END
!   writefile(vim9_lines, 'Xvim9_script.vim')
  
    var legacy_lines =<< trim END
      source Xvim9_script.vim
--- 2018,2024 ----
         return 'text'
      enddef
    END
!   writefile(vim9_lines, 'Xvim9_script.vim', 'D')
  
    var legacy_lines =<< trim END
      source Xvim9_script.vim
***************
*** 2109,2122 ****
      call assert_equal('global', global)
      call assert_equal('global', g:global)
    END
!   writefile(legacy_lines, 'Xlegacy_script.vim')
  
    source Xlegacy_script.vim
    assert_equal('global', g:global)
    unlet g:global
- 
-   delete('Xlegacy_script.vim')
-   delete('Xvim9_script.vim')
  enddef
  
  def Test_import_vim9_from_legacy()
--- 2029,2039 ----
      call assert_equal('global', global)
      call assert_equal('global', g:global)
    END
!   writefile(legacy_lines, 'Xlegacy_script.vim', 'D')
  
    source Xlegacy_script.vim
    assert_equal('global', g:global)
    unlet g:global
  enddef
  
  def Test_import_vim9_from_legacy()
***************
*** 2129,2135 ****
         return 'text'
      enddef
    END
!   writefile(vim9_lines, 'Xvim9_export.vim')
  
    var legacy_lines =<< trim END
      import './Xvim9_export.vim' as vim9
--- 2046,2052 ----
         return 'text'
      enddef
    END
!   writefile(vim9_lines, 'Xvim9_export.vim', 'D')
  
    var legacy_lines =<< trim END
      import './Xvim9_export.vim' as vim9
***************
*** 2147,2166 ****
      call assert_equal('exported', s:vim9.exported)
      call assert_equal('text', s:vim9.GetText())
    END
!   writefile(legacy_lines, 'Xlegacy_script.vim')
  
    source Xlegacy_script.vim
    assert_equal('global', g:global)
    unlet g:global
- 
-   delete('Xlegacy_script.vim')
-   delete('Xvim9_export.vim')
  enddef
  
  def Test_cmdline_win()
    # if the Vim syntax highlighting uses Vim9 constructs they can be used from
    # the command line window.
!   mkdir('rtp/syntax', 'p')
    var export_lines =<< trim END
      vim9script
      export var That = 'yes'
--- 2064,2080 ----
      call assert_equal('exported', s:vim9.exported)
      call assert_equal('text', s:vim9.GetText())
    END
!   writefile(legacy_lines, 'Xlegacy_script.vim', 'D')
  
    source Xlegacy_script.vim
    assert_equal('global', g:global)
    unlet g:global
  enddef
  
  def Test_cmdline_win()
    # if the Vim syntax highlighting uses Vim9 constructs they can be used from
    # the command line window.
!   mkdir('rtp/syntax', 'pR')
    var export_lines =<< trim END
      vim9script
      export var That = 'yes'
***************
*** 2186,2192 ****
      au!
    augroup END
    &rtp = save_rtp
-   delete('rtp', 'rf')
  enddef
  
  def Test_import_gone_when_sourced_twice()
--- 2100,2105 ----
***************
*** 2198,2204 ****
        g:guard = 1
        export var name = 'someName'
    END
!   writefile(exportlines, 'XexportScript.vim')
  
    var lines =<< trim END
        vim9script
--- 2111,2117 ----
        g:guard = 1
        export var name = 'someName'
    END
!   writefile(exportlines, 'XexportScript.vim', 'D')
  
    var lines =<< trim END
        vim9script
***************
*** 2207,2213 ****
          return expo.name
        enddef
    END
!   writefile(lines, 'XscriptImport.vim')
    so XscriptImport.vim
    assert_equal('someName', g:GetName())
  
--- 2120,2126 ----
          return expo.name
        enddef
    END
!   writefile(lines, 'XscriptImport.vim', 'D')
    so XscriptImport.vim
    assert_equal('someName', g:GetName())
  
***************
*** 2215,2222 ****
    assert_fails('call g:GetName()', 'E1149:')
  
    delfunc g:GetName
-   delete('XexportScript.vim')
-   delete('XscriptImport.vim')
    unlet g:guard
  enddef
  
--- 2128,2133 ----
***************
*** 2235,2241 ****
       enddef
    END
  
!   mkdir('Xfulldir/autoload', 'p')
    writefile(lines, 'Xfulldir/autoload/some.vim')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xfulldir'
--- 2146,2152 ----
       enddef
    END
  
!   mkdir('Xfulldir/autoload', 'pR')
    writefile(lines, 'Xfulldir/autoload/some.vim')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xfulldir'
***************
*** 2258,2269 ****
    writefile(lines, 'Xfulldir/autoload/Other.vim')
    assert_equal('other', g:Other#GetOther())
  
-   delete('Xfulldir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_vim9script_autoload()
!   mkdir('Xaldir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xaldir'
  
--- 2169,2179 ----
    writefile(lines, 'Xfulldir/autoload/Other.vim')
    assert_equal('other', g:Other#GetOther())
  
    &rtp = save_rtp
  enddef
  
  def Test_vim9script_autoload()
!   mkdir('Xaldir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xaldir'
  
***************
*** 2323,2334 ****
  
    unlet g:prefixed_loaded
    unlet g:expected_loaded
-   delete('Xaldir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_import_autoload_not_exported()
!   mkdir('Xnimdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xnimdir'
  
--- 2233,2243 ----
  
    unlet g:prefixed_loaded
    unlet g:expected_loaded
    &rtp = save_rtp
  enddef
  
  def Test_import_autoload_not_exported()
!   mkdir('Xnimdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xnimdir'
  
***************
*** 2453,2464 ****
    END
    v9.CheckScriptFailure(lines, 'E117: Unknown function: notExport7#NotExport')
  
-   delete('Xnimdir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_vim9script_autoload_call()
!   mkdir('Xcalldir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xcalldir'
  
--- 2362,2372 ----
    END
    v9.CheckScriptFailure(lines, 'E117: Unknown function: notExport7#NotExport')
  
    &rtp = save_rtp
  enddef
  
  def Test_vim9script_autoload_call()
!   mkdir('Xcalldir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xcalldir'
  
***************
*** 2497,2508 ****
    v9.CheckScriptSuccess(lines)
  
    unlet g:result
-   delete('Xcalldir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_vim9script_noclear_autoload()
!   mkdir('Xnocdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xnocdir'
  
--- 2405,2415 ----
    v9.CheckScriptSuccess(lines)
  
    unlet g:result
    &rtp = save_rtp
  enddef
  
  def Test_vim9script_noclear_autoload()
!   mkdir('Xnocdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xnocdir'
  
***************
*** 2526,2532 ****
        nnoremap <F3> <ScriptCmd>g:result = double.Func()<CR>
    END
    g:double_loaded = 'no'
!   writefile(lines, 'Xloaddouble')
    source Xloaddouble
    assert_equal('no', g:double_loaded)
    assert_equal(true, g:script_loaded)
--- 2433,2439 ----
        nnoremap <F3> <ScriptCmd>g:result = double.Func()<CR>
    END
    g:double_loaded = 'no'
!   writefile(lines, 'Xloaddouble', 'D')
    source Xloaddouble
    assert_equal('no', g:double_loaded)
    assert_equal(true, g:script_loaded)
***************
*** 2535,2550 ****
    assert_equal('called', g:result)
    assert_equal('yes', g:double_loaded)
  
-   delete('Xloaddouble')
    unlet g:double_loaded
    unlet g:script_loaded
    unlet g:result
-   delete('Xnocdir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_vim9script_autoload_duplicate()
!   mkdir('Xdupdir/autoload', 'p')
  
    var lines =<< trim END
       vim9script
--- 2442,2455 ----
    assert_equal('called', g:result)
    assert_equal('yes', g:double_loaded)
  
    unlet g:double_loaded
    unlet g:script_loaded
    unlet g:result
    &rtp = save_rtp
  enddef
  
  def Test_vim9script_autoload_duplicate()
!   mkdir('Xdupdir/autoload', 'pR')
  
    var lines =<< trim END
       vim9script
***************
*** 2613,2624 ****
    END
    writefile(lines, 'Xdupdir/autoload/dup6func.vim')
    assert_fails('source Xdupdir/autoload/dup6func.vim', 'E1041: Redefining 
script item: "Func"')
- 
-   delete('Xdupdir', 'rf')
  enddef
  
  def Test_autoload_missing_function_name()
!   mkdir('Xmisdir/autoload', 'p')
  
    var lines =<< trim END
       vim9script
--- 2518,2527 ----
    END
    writefile(lines, 'Xdupdir/autoload/dup6func.vim')
    assert_fails('source Xdupdir/autoload/dup6func.vim', 'E1041: Redefining 
script item: "Func"')
  enddef
  
  def Test_autoload_missing_function_name()
!   mkdir('Xmisdir/autoload', 'pR')
  
    var lines =<< trim END
       vim9script
***************
*** 2628,2635 ****
    END
    writefile(lines, 'Xmisdir/autoload/loadme.vim')
    assert_fails('source Xmisdir/autoload/loadme.vim', 'E129:')
- 
-   delete('Xmisdir', 'rf')
  enddef
  
  def Test_autoload_name_wrong()
--- 2531,2536 ----
***************
*** 2637,2647 ****
       def Xscriptname#Func()
       enddef
    END
!   writefile(lines, 'Xscriptname.vim')
    v9.CheckScriptFailure(lines, 'E746:')
-   delete('Xscriptname.vim')
  
!   mkdir('Xwrodir/autoload', 'p')
    lines =<< trim END
       vim9script
       def somescript#Func()
--- 2538,2547 ----
       def Xscriptname#Func()
       enddef
    END
!   writefile(lines, 'Xscriptname.vim', 'D')
    v9.CheckScriptFailure(lines, 'E746:')
  
!   mkdir('Xwrodir/autoload', 'pR')
    lines =<< trim END
       vim9script
       def somescript#Func()
***************
*** 2654,2660 ****
  enddef
  
  def Test_import_autoload_postponed()
!   mkdir('Xpostdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xpostdir'
  
--- 2554,2560 ----
  enddef
  
  def Test_import_autoload_postponed()
!   mkdir('Xpostdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xpostdir'
  
***************
*** 2685,2696 ****
    assert_equal('true', g:loaded_postponed)
  
    unlet g:loaded_postponed
-   delete('Xpostdir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_import_autoload_override()
!   mkdir('Xoverdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xoverdir'
    test_override('autoload', 1)
--- 2585,2595 ----
    assert_equal('true', g:loaded_postponed)
  
    unlet g:loaded_postponed
    &rtp = save_rtp
  enddef
  
  def Test_import_autoload_override()
!   mkdir('Xoverdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xoverdir'
    test_override('autoload', 1)
***************
*** 2721,2732 ****
  
    test_override('autoload', 0)
    unlet g:loaded_override
-   delete('Xoverdir', 'rf')
    &rtp = save_rtp
  enddef
  
  def Test_autoload_mapping()
!   mkdir('Xmapdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xmapdir'
  
--- 2620,2630 ----
  
    test_override('autoload', 0)
    unlet g:loaded_override
    &rtp = save_rtp
  enddef
  
  def Test_autoload_mapping()
!   mkdir('Xmapdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xmapdir'
  
***************
*** 2773,2779 ****
    nunmap yy
    unlet g:toggle_loaded
    unlet g:toggle_called
-   delete('Xmapdir', 'rf')
    &rtp = save_rtp
  enddef
  
--- 2671,2676 ----
***************
*** 2831,2837 ****
  
  " test disassembling an auto-loaded function starting with "debug"
  def Test_vim9_autoload_disass()
!   mkdir('Xdasdir/autoload', 'p')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xdasdir'
  
--- 2728,2734 ----
  
  " test disassembling an auto-loaded function starting with "debug"
  def Test_vim9_autoload_disass()
!   mkdir('Xdasdir/autoload', 'pR')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xdasdir'
  
***************
*** 2860,2866 ****
    END
    v9.CheckScriptSuccess(lines)
  
-   delete('Xdasdir', 'rf')
    &rtp = save_rtp
  enddef
  
--- 2757,2762 ----
***************
*** 2873,2879 ****
       enddef
    END
  
!   mkdir('Xauldir/autoload', 'p')
    writefile(lines, 'Xauldir/autoload/foo.vim')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xauldir'
--- 2769,2775 ----
       enddef
    END
  
!   mkdir('Xauldir/autoload', 'pR')
    writefile(lines, 'Xauldir/autoload/foo.vim')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xauldir'
***************
*** 2886,2892 ****
    augroup test
      autocmd!
    augroup END
-   delete('Xauldir', 'rf')
    &rtp = save_rtp
  enddef
  
--- 2782,2787 ----
***************
*** 2899,2905 ****
       enddef
    END
  
!   mkdir('Xcasedir/autoload', 'p')
    writefile(lines, 'Xcasedir/autoload/CaseSensitive.vim')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xcasedir'
--- 2794,2800 ----
       enddef
    END
  
!   mkdir('Xcasedir/autoload', 'pR')
    writefile(lines, 'Xcasedir/autoload/CaseSensitive.vim')
    var save_rtp = &rtp
    exe 'set rtp^=' .. getcwd() .. '/Xcasedir'
***************
*** 2920,2926 ****
      v9.CheckScriptFailure(lines, 'E1262:')
    endif
  
-   delete('Xcasedir', 'rf')
    &rtp = save_rtp
  enddef
  
--- 2815,2820 ----
***************
*** 2944,2950 ****
        catch /wontmatch/
        endtry
    END
!   call mkdir('Xruntime/autoload', 'p')
    call writefile(lines, 'Xruntime/autoload/crash.vim')
  
    # run in a separate Vim to avoid the side effects of assert_fails()
--- 2838,2844 ----
        catch /wontmatch/
        endtry
    END
!   call mkdir('Xruntime/autoload', 'pR')
    call writefile(lines, 'Xruntime/autoload/crash.vim')
  
    # run in a separate Vim to avoid the side effects of assert_fails()
***************
*** 2954,2966 ****
      call writefile(['ok'], 'Xdidit')
      qall!
    END
!   writefile(lines, 'Xscript')
    g:RunVim([], [], '-S Xscript')
    assert_equal(['ok'], readfile('Xdidit'))
  
    delete('Xdidit')
-   delete('Xscript')
-   delete('Xruntime', 'rf')
  
    lines =<< trim END
      vim9script
--- 2848,2858 ----
      call writefile(['ok'], 'Xdidit')
      qall!
    END
!   writefile(lines, 'Xscript', 'D')
    g:RunVim([], [], '-S Xscript')
    assert_equal(['ok'], readfile('Xdidit'))
  
    delete('Xdidit')
  
    lines =<< trim END
      vim9script
***************
*** 2973,2979 ****
    if !has('unix')
      CheckUnix
    else
!     mkdir('Xto/plugin', 'p')
      var lines =<< trim END
          vim9script
          import autoload 'bar.vim'
--- 2865,2871 ----
    if !has('unix')
      CheckUnix
    else
!     mkdir('Xto/plugin', 'pR')
      var lines =<< trim END
          vim9script
          import autoload 'bar.vim'
***************
*** 2982,2988 ****
      END
      writefile(lines, 'Xto/plugin/foo.vim')
  
!     mkdir('Xto/autoload', 'p')
      lines =<< trim END
          vim9script
          export def Func(): string
--- 2874,2880 ----
      END
      writefile(lines, 'Xto/plugin/foo.vim')
  
!     mkdir('Xto/autoload', 'pR')
      lines =<< trim END
          vim9script
          export def Func(): string
***************
*** 3014,3020 ****
      unlet g:resultFunc
      unlet g:resultValue
      &rtp = save_rtp
-     delete('Xto', 'rf')
      delete('Xfrom', 'rf')
    endif
  enddef
--- 2906,2911 ----
*** ../vim-9.0.0765/src/version.c       2022-10-15 19:03:57.552589510 +0100
--- src/version.c       2022-10-15 20:03:12.192458472 +0100
***************
*** 697,698 ****
--- 697,700 ----
  {   /* Add new patch number below this line */
+ /**/
+     766,
  /**/

-- 
To the optimist, the glass is half full.
To the pessimist, the glass is half empty.
To the engineer, the glass is twice as big as it needs to be.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///                                                                      \\\
\\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20221015190708.D4EE61C05ED%40moolenaar.net.

Raspunde prin e-mail lui