Mercurial > vim
comparison src/testdir/test_vim9_import.vim @ 27267:322b79b002b7 v8.2.4162
patch 8.2.4162: Vim9: no error for redefining function with export
Commit: https://github.com/vim/vim/commit/9c7cae66bc21a3dc5c6e60cd64216ce7c9073003
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Jan 20 19:10:25 2022 +0000
patch 8.2.4162: Vim9: no error for redefining function with export
Problem: Vim9: no error for redefining function with export.
Solution: Check for existing function with/without prefix. (closes https://github.com/vim/vim/issues/9577)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 20 Jan 2022 20:15:03 +0100 |
parents | 8a097fc07aa4 |
children | 24da57a079ef |
comparison
equal
deleted
inserted
replaced
27266:06a2610c1661 | 27267:322b79b002b7 |
---|---|
1438 unlet g:result | 1438 unlet g:result |
1439 delete('Xdir', 'rf') | 1439 delete('Xdir', 'rf') |
1440 &rtp = save_rtp | 1440 &rtp = save_rtp |
1441 enddef | 1441 enddef |
1442 | 1442 |
1443 def Test_vim9script_autoload_duplicate() | |
1444 mkdir('Xdir/autoload', 'p') | |
1445 | |
1446 var lines =<< trim END | |
1447 vim9script | |
1448 | |
1449 export def Func() | |
1450 enddef | |
1451 | |
1452 def Func() | |
1453 enddef | |
1454 END | |
1455 writefile(lines, 'Xdir/autoload/dupfunc.vim') | |
1456 assert_fails('source Xdir/autoload/dupfunc.vim', 'E1073:') | |
1457 | |
1458 lines =<< trim END | |
1459 vim9script | |
1460 | |
1461 def Func() | |
1462 enddef | |
1463 | |
1464 export def Func() | |
1465 enddef | |
1466 END | |
1467 writefile(lines, 'Xdir/autoload/dup2func.vim') | |
1468 assert_fails('source Xdir/autoload/dup2func.vim', 'E1073:') | |
1469 | |
1470 lines =<< trim END | |
1471 vim9script | |
1472 | |
1473 def Func() | |
1474 enddef | |
1475 | |
1476 export var Func = 'asdf' | |
1477 END | |
1478 writefile(lines, 'Xdir/autoload/dup3func.vim') | |
1479 assert_fails('source Xdir/autoload/dup3func.vim', 'E1041: Redefining script item Func') | |
1480 | |
1481 lines =<< trim END | |
1482 vim9script | |
1483 | |
1484 export var Func = 'asdf' | |
1485 | |
1486 def Func() | |
1487 enddef | |
1488 END | |
1489 writefile(lines, 'Xdir/autoload/dup4func.vim') | |
1490 assert_fails('source Xdir/autoload/dup4func.vim', 'E707:') | |
1491 | |
1492 lines =<< trim END | |
1493 vim9script | |
1494 | |
1495 var Func = 'asdf' | |
1496 | |
1497 export def Func() | |
1498 enddef | |
1499 END | |
1500 writefile(lines, 'Xdir/autoload/dup5func.vim') | |
1501 assert_fails('source Xdir/autoload/dup5func.vim', 'E707:') | |
1502 | |
1503 lines =<< trim END | |
1504 vim9script | |
1505 | |
1506 export def Func() | |
1507 enddef | |
1508 | |
1509 var Func = 'asdf' | |
1510 END | |
1511 writefile(lines, 'Xdir/autoload/dup6func.vim') | |
1512 assert_fails('source Xdir/autoload/dup6func.vim', 'E1041: Redefining script item Func') | |
1513 | |
1514 delete('Xdir', 'rf') | |
1515 enddef | |
1516 | |
1443 def Test_import_autoload_postponed() | 1517 def Test_import_autoload_postponed() |
1444 mkdir('Xdir/autoload', 'p') | 1518 mkdir('Xdir/autoload', 'p') |
1445 var save_rtp = &rtp | 1519 var save_rtp = &rtp |
1446 exe 'set rtp^=' .. getcwd() .. '/Xdir' | 1520 exe 'set rtp^=' .. getcwd() .. '/Xdir' |
1447 | 1521 |