export def Exported(): string
return 'Exported'
enddef
+ export final theList = [1]
END
def Undo_export_script_lines()
exp_name ..= ' Doe'
g:imported_name_appended = exp_name
g:imported_later = exported
+
+ import theList from './Xexport.vim'
+ theList->add(2)
+ assert_equal([1, 2], theList)
END
writefile(import_script_lines, 'Ximport.vim')
writefile(import_assign_to_const, 'Ximport.vim')
assert_fails('source Ximport.vim', 'E46:', '', 1, '_Assign')
+ # try changing an imported final
+ var import_assign_to_final =<< trim END
+ vim9script
+ import theList from './Xexport.vim'
+ def Assign()
+ theList = [2]
+ enddef
+ defcompile
+ END
+ writefile(import_assign_to_final, 'Ximport.vim')
+ assert_fails('source Ximport.vim', 'E46:', '', 1, '_Assign')
+
# import a very long name, requires making a copy
var import_long_name_lines =<< trim END
vim9script