Bram Moolenaar
8e7d6223f6
patch 8.2.2160: various typos
...
Problem: Various typos.
Solution: Fix spelling mistakes. (closes #7494 )
2020-12-18 19:49:56 +01:00
Bram Moolenaar
fffdf4754f
patch 8.2.2142: memory leak when heredoc is not terminated
...
Problem: Memory leak when heredoc is not terminated.
Solution: Free heredoc_trimmed.
2020-12-13 21:16:55 +01:00
Bram Moolenaar
b5b9480ee9
patch 8.2.2138: Vim9: "exit_cb" causes Vim to exit
...
Problem: Vim9: "exit_cb" causes Vim to exit.
Solution: Require white space after a command in Vim9 script. (closes #7467 )
Also fix that Vim9 style heredoc was not always recognized.
2020-12-13 17:50:20 +01:00
Bram Moolenaar
6abdcf8285
patch 8.2.2033: Vim9: :def without argument gives compilation error
...
Problem: Vim9: :def without argument gives compilation error.
Solution: Add the DEF instruction. (closes #7344 )
2020-11-22 18:15:44 +01:00
Bram Moolenaar
0ba48e8c27
patch 8.2.2001: Vim9: :def function does not apply 'maxfuncdepth'
...
Problem: Vim9: :def function does not apply 'maxfuncdepth'.
Solution: Use 'maxfuncdepth'. (issue #7313 )
2020-11-17 18:23:19 +01:00
Bram Moolenaar
b4d16cb11d
patch 8.2.1956: Vim9: cannot specify argument types for lambda
...
Problem: Vim9: cannot specify argument types for lambda.
Solution: Allow adding argument types. Check arguments when calling a
function reference.
2020-11-05 18:45:46 +01:00
Bram Moolenaar
39ca4127a0
patch 8.2.1870: Vim9: no need to keep all script variables
...
Problem: Vim9: no need to keep all script variables.
Solution: Only keep script variables when a function was defined that could
use them. Fix freeing static string on exit.
2020-10-20 14:25:07 +02:00
Bram Moolenaar
fbbcd00367
patch 8.2.1846: Vim9: block variables are not found in compiled function
...
Problem: Vim9: variables declared in a local block are not found in
when a function is compiled.
Solution: Look for script variables in sn_all_vars.
2020-10-15 12:46:44 +02:00
Bram Moolenaar
7b5d544269
patch 8.2.1796: Vim9: invalid memory access with weird function name
...
Problem: Vim9: invalid memory access with weird function name. (Dhiraj
Mishra)
Solution: Check the name is valid. Add a test.
2020-10-04 13:42:34 +02:00
Bram Moolenaar
cfcd011fcd
patch 8.2.1756: Vim9: :let will soon be disallowed
...
Problem: Vim9: :let will soon be disallowed.
Solution: Add v:disallow_let temporarily. Fix tests.
2020-09-27 15:19:27 +02:00
Bram Moolenaar
280227270c
patch 8.2.1723: Vim9: Variable argument name cannot start with underscore
...
Problem: Vim9: Variable argument name cannot start with underscore.
Solution: Use eval_isnamec1(). (closes #6988 )
2020-09-21 22:02:49 +02:00
Bram Moolenaar
b816dae16d
patch 8.2.1718: Vim9: :def function disallows "firstline" for no good reason
...
Problem: Vim9: :def function disallows "firstline" and "lastline" argument
names for no good reason.
Solution: Don't check the arguments for a :def function. (closes #6986 )
2020-09-20 22:04:00 +02:00
Bram Moolenaar
a05e524f3a
patch 8.2.1712: Vim9: leaking memory when calling a lambda
...
Problem: Vim9: leaking memory when calling a lambda.
Solution: Decrement function reference from ISN_DCALL.
2020-09-19 18:19:19 +02:00
Bram Moolenaar
fdeab65db6
patch 8.2.1711: Vim9: leaking memory when using partial
...
Problem: Vim9: leaking memory when using partial.
Solution: Do delete the function even when it was compiled.
2020-09-19 15:16:50 +02:00
Bram Moolenaar
a187c43cfe
patch 8.2.1698: cannot lock a variable in legacy Vim script like in Vim9
...
Problem: Cannot lock a variable in legacy Vim script like in Vim9.
Solution: Make ":lockvar 0" work.
2020-09-16 21:08:28 +02:00
Bram Moolenaar
3bd8de40b4
patch 8.2.1679: Vim9: ":*" is not recognized as a range
...
Problem: Vim9: ":*" is not recognized as a range.
Solution: Move recognizing "*" into skip_range(). (closes #6838 )
2020-09-14 16:37:34 +02:00
Bram Moolenaar
0f769815c8
patch 8.2.1667: local function name cannot shadow a global function name
...
Problem: Local function name cannot shadow a global function name.
Solution: Ignore global functions when checking a script-local or scoped
function name. (closes #6926 )
2020-09-12 18:32:34 +02:00
Bram Moolenaar
96f8f499ce
patch 8.2.1643: Vim9: :defcompile compiles dead functions
...
Problem: Vim9: :defcompile compiles dead functions.
Solution: Skip over dead functions.
2020-09-09 17:08:51 +02:00
Bram Moolenaar
95006e3dca
patch 8.2.1541: Vim9: cannot find function reference for s:Func
...
Problem: Vim9: cannot find function reference for s:Func.
Solution: Recognize <SNR> prefix. (closes #6805 )
2020-08-29 17:47:08 +02:00
Bram Moolenaar
ee8580e52e
patch 8.2.1534: Vim9: type error for argument type is not at call position
...
Problem: Vim9: type error for argument type is not at call position.
Solution: Set the context and stack after checking the arguments.
(issue #6785 )
2020-08-28 17:19:07 +02:00
Bram Moolenaar
7cb6fc29d0
patch 8.2.1504: Vim9: white space checks are only done for a :def function
...
Problem: Vim9: white space checks are only done for a :def function.
Solution: Also do checks at the script level. Adjust the name of a few
error messages.
2020-08-21 22:36:47 +02:00
Bram Moolenaar
66250c932e
patch 8.2.1491: Vim9: crash when compiling heredoc lines start with comment
...
Problem: Vim9: crash when compiling heredoc lines start with comment.
Solution: Skip over NULL pointers. Do not remove comment and empty lines
when fetching function lines. (closes #6743 )
2020-08-20 15:02:42 +02:00
Bram Moolenaar
451c2e3536
patch 8.2.1460: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move more messages into errors.h.
2020-08-15 16:33:28 +02:00
Bram Moolenaar
c4ce36d486
patch 8.2.1445: Vim9: function expanded name is cleared when sourcing again
...
Problem: Vim9: function expanded name is cleared when sourcing a script
again.
Solution: Only clear the expanded name when deleting the function.
(closes #6707 )
2020-08-14 17:08:15 +02:00
Bram Moolenaar
bc4c505166
patch 8.2.1444: error messages are spread out and names can be confusing
...
Problem: Error messages are spread out and names can be confusing.
Solution: Start moving error messages to a separate file and use clear
names.
2020-08-13 22:47:35 +02:00
Bram Moolenaar
035d6e91bd
patch 8.2.1423: Vim9: find global function when looking for script-local
...
Problem: Vim9: find global function when looking for script-local.
Solution: Don't strip prefix if name starts with "s:". (closes #6688 )
2020-08-11 22:30:42 +02:00
Bram Moolenaar
8294d49937
patch 8.2.1418: Vim9: invalid error for missing white space
...
Problem: Vim9: invalid error for missing white space after function.
Solution: Do not skip over white space. (closes #6679 )
2020-08-10 22:40:56 +02:00
Bram Moolenaar
efa94447e8
patch 8.2.1399: Vim9: may find imported item in wrong script
...
Problem: Vim9: may find imported item in wrong script.
Solution: When looking up script-local function use the embedded script ID.
(issue #6644 )
2020-08-08 22:16:00 +02:00
Bram Moolenaar
bf8feb5aeb
patch 8.2.1392: Vim9: line number incorrect after skipping over comment lines
...
Problem: Vim9: error line number incorrect after skipping over comment
lines.
Solution: Insert empty lines for skipped lines.
2020-08-08 14:26:31 +02:00
Bram Moolenaar
f9b2b49663
patch 8.2.1373: Vim9: no error for assigning to non-existing script var
...
Problem: Vim9: no error for assigning to non-existing script var.
Solution: Check that in Vim9 script the variable was defined. (closes #6630 )
2020-08-05 14:34:14 +02:00
Bram Moolenaar
eef2102e20
patch 8.2.1349: Vim9: can define a function with the name of an import
...
Problem: Vim9: can define a function with the name of an import.
Solution: Disallow using an existing name. (closes #6585 )
2020-08-01 22:16:43 +02:00
Bram Moolenaar
333894b195
patch 8.2.1343: Vim9: cannot find global function when using g:
...
Problem: Vim9: cannot find global function when using g: when local
function with the same name exists.
Solution: Find global function when using g:.
2020-08-01 18:53:07 +02:00
Bram Moolenaar
af8edbb8dc
patch 8.2.1333: Vim9: memory leak when using nested global function
...
Problem: Vim9: memory leak when using nested global function.
Solution: Swap from and to when copying the lines.
2020-08-01 00:03:09 +02:00
Bram Moolenaar
ce6583568f
patch 8.2.1332: Vim9: memory leak when using nested global function
...
Problem: Vim9: memory leak when using nested global function.
Solution: Delete the function when deleting the instruction. Disable test
that still causes a leak.
2020-07-31 23:47:12 +02:00
Bram Moolenaar
38ddf333f6
patch 8.2.1329: Vim9: cannot define global function inside :def function
...
Problem: Vim9: cannot define global function inside :def function.
Solution: Assign to global variable instead of local. (closes #6584 )
2020-07-31 22:05:04 +02:00
Bram Moolenaar
9d48956681
patch 8.2.1326: Vim9: skipping over white space after list
...
Problem: Vim9: skipping over white space after list.
Solution: Do not skip white space, a following [] would be misinterpreted.
(closes #6552 ) Fix a few side effects.
2020-07-30 20:08:50 +02:00
Bram Moolenaar
9898107f54
patch 8.2.1314: Vim9: rule for comment after :function is confusing
...
Problem: Vim9: rule for comment after :function is confusing.
Solution: Allow double quoted comment after :function in vim9script.
(closes #6556 )
2020-07-29 14:40:25 +02:00
Bram Moolenaar
4fc224ca1c
patch 8.2.1300: Vim9: optional argument type not parsed properly
...
Problem: Vim9: optional argument type not parsed properly.
Solution: Skip over the "?". (issue #6507 )
2020-07-26 17:56:25 +02:00
Bram Moolenaar
925e9fd633
patch 8.2.1290: Vim9: cannot replace a global function
...
Problem: Vim9: cannot replace a global function.
Solution: Allow for "!" on a global function. (closes #6524 ) Also fix that
:delfunc on a :def function only made it empty.
2020-07-25 15:41:11 +02:00
Bram Moolenaar
2d06bfde29
patch 8.2.1281: the "trailing characters" error can be hard to understand
...
Problem: The "trailing characters" error can be hard to understand.
Solution: Add the trailing characters to the message.
2020-07-23 17:16:18 +02:00
Bram Moolenaar
e7e4838f25
patch 8.2.1268: Vim9: no error for using double quote comment
...
Problem: Vim9: no error for using double quote comment after :func or :def.
Solution: Only accept double quote when not in Vim9 script and not after
:def. (closes #6483 )
2020-07-22 18:17:08 +02:00
Bram Moolenaar
682d0a1546
patch 8.2.1251: Vim9: warning for pointer usage, test failure undetected
...
Problem: Vim9: warning for pointer usage, test failure undetected.
Solution: Fix pointer indirection. Give error when executing function
failed for any reason. Fix instruction names.
2020-07-19 20:48:59 +02:00
Bram Moolenaar
1f22cc5cdb
patch 8.2.1210: using ht_used when looping through a hashtab is less reliable
...
Problem: Using ht_used when looping through a hashtab is less reliable.
Solution: Use ht_changed in a few more places.
2020-07-14 21:08:49 +02:00
Bram Moolenaar
7ce85be63b
patch 8.2.1207: Vim9: crash in expr test when run in the GUI
...
Problem: Vim9: crash in expr test when run in the GUI.
Solution: Break out of loop over hashtab also when function got removed and
added.
2020-07-14 15:01:05 +02:00
Bram Moolenaar
eb6880b6eb
patch 8.2.1190: Vim9: checking for Vim9 syntax is spread out
...
Problem: Vim9: checking for Vim9 syntax is spread out.
Solution: Use in_vim9script().
2020-07-12 17:07:05 +02:00
Bram Moolenaar
914e7eaa67
patch 8.2.1182: Vim9: no check for whitespace after comma in lambda
...
Problem: Vim9: no check for whitespace after comma in lambda.
Solution: Give error if white space is missing.
2020-07-11 15:20:48 +02:00
Bram Moolenaar
efaaaa683b
patch 8.2.1162: crash when using a lambda
...
Problem: Crash when using a lambda.
Solution: Check for evalarg to be NULL.
2020-07-08 22:24:09 +02:00
Bram Moolenaar
8e2730a315
patch 8.2.1161: Vim9: using freed memory
...
Problem: Vim9: using freed memory.
Solution: Put pointer back in evalarg instead of freeing it.
2020-07-08 22:01:49 +02:00
Bram Moolenaar
6110e79a58
patch 8.2.1160: Vim9: memory leak in allocated types
...
Problem: Vim9: memory leak in allocated types.
Solution: Free the type pointers.
2020-07-08 19:35:21 +02:00
Bram Moolenaar
e6b5324e3a
patch 8.2.1110: Vim9: line continuation does not work in function arguments
...
Problem: Vim9: line continuation does not work in function arguments.
Solution: Pass "evalarg" to get_func_tv(). Fix seeing double quoted string
as comment.
2020-07-01 17:28:33 +02:00