Bram Moolenaar
ecb664501d
patch 8.2.2866: Vim9: memory leak when using inline function
...
Problem: Vim9: memory leak when using inline function.
Solution: Remember what strings to free.
2021-05-18 15:09:18 +02:00
Bram Moolenaar
f18332fb9e
patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
...
Problem: Vim9: skip argument to searchpair() is not compiled.
Solution: Add VAR_INSTR.
2021-05-07 17:55:55 +02:00
Bram Moolenaar
96cf4ba8fb
patch 8.2.2805: Vim9: cannot use legacy syntax in Vim9 script
...
Problem: Vim9: cannot use legacy syntax in Vim9 script.
Solution: Add the :legacy command.
2021-04-24 14:15:41 +02:00
Bram Moolenaar
c70fe460b0
patch 8.2.2775: Vim9: wrong line number used for some commands
...
Problem: Vim9: wrong line number used for some commands.
Solution: For :exe, :echo and the like use the line number of the start of
the command. When calling a function set the line number in the
script context.
2021-04-17 17:59:19 +02:00
Bram Moolenaar
701cc6ca9e
patch 8.2.2742: Vim9: when compiling a function fails it is cleared
...
Problem: Vim9: when compiling a function fails it is cleared.
Solution: Keep the function lines, prevent execution with a different
status. (closes #8093 )
2021-04-10 13:33:48 +02:00
Bram Moolenaar
e8c4660a55
patch 8.2.2725: Vim9: message about compiling is wrong when using try/catch
...
Problem: Vim9: message about compiling is wrong when using try/catch.
Solution: Store the compiling flag with the message. (closes #8071 )
2021-04-05 22:27:37 +02:00
Bram Moolenaar
38a3bfa9a2
patch 8.2.2677: Vim9: cannot use only some of the default arguments
...
Problem: Vim9: cannot use only some of the default arguments.
Solution: Use v:none to use default argument value. Remove
uf_def_arg_idx[], use JUMP_IF_ARG_SET. (closes #6504 )
2021-03-29 22:14:55 +02:00
Bram Moolenaar
67da21a147
patch 8.2.2636: memory leak when compiling inline function
...
Problem: Memory leak when compiling inline function.
Solution: Free the prefetched line.
2021-03-21 22:12:34 +01:00
Bram Moolenaar
eed9d46293
patch 8.2.2518: 'listchars' should be window-local
...
Problem: 'listchars' should be window-local.
Solution: Make 'listchars' global-local. (Yegappan Lakshmanan, Marco Hinz,
closes #5206 , closes #7850 )
2021-02-15 20:38:25 +01:00
Bram Moolenaar
39f3b14110
patch 8.2.2511: Vim9: cannot use Vim9 script syntax in some places
...
Problem: Vim9: cannot use Vim9 script syntax in some places.
Solution: Add the :vim9cmd command modifier. Incompatible: Makes ":vim9"
mean ":vim9cmd" instead of ":vim9script".
2021-02-14 12:57:36 +01:00
Bram Moolenaar
f785aa1354
patch 8.2.2501: not always clear where an error is reported
...
Problem: Not always clear where an error is reported.
Solution: Add the where_T structure and pass it around. (closes #7796 )
2021-02-11 21:19:34 +01:00
Bram Moolenaar
983d83ff1c
patch 8.2.2476: using freed memory when splitting window while closing buffer
...
Problem: Using freed memory when using an autocommand to split a window
while a buffer is being closed.
Solution: Disallow splitting when the buffer has b_locked_split set.
2021-02-07 12:12:43 +01:00
Bram Moolenaar
6a12e3342d
patch 8.2.2438: out of bounds compiler warning
...
Problem: Out of bounds compiler warning.
Solution: Increase the size of uf_name.
2021-01-31 14:46:00 +01:00
Bram Moolenaar
f002a41d12
patch 8.2.2401: build fails without +profiling feature
...
Problem: Build fails without +profiling feature.
Solution: Add #ifdefs.
2021-01-24 13:34:18 +01:00
Bram Moolenaar
b204990346
patch 8.2.2400: Vim9: compiled functions are not profiled
...
Problem: Vim9: compiled functions are not profiled.
Solution: Add initial changes to profile compiled functions. Fix that a
script-local function was hard to debug.
2021-01-24 12:53:53 +01:00
Bram Moolenaar
9567efa1b4
patch 8.2.2332: Vim9: missing :endif not reported when using :windo
...
Problem: Vim9: missing :endif not reported when using :windo.
Solution: Pass a getline function to do_cmdline(). (closes #7650 )
2021-01-11 22:16:30 +01:00
Bram Moolenaar
082517570d
patch 8.2.2331: Vim9: wrong error when modifying dict declared with :final
...
Problem: Vim9: wrong error when modifying dict declared with :final.
Solution: Do not check for writable variable when an index follows.
(closes #7657 )
2021-01-11 21:20:18 +01:00
Bram Moolenaar
0186e58639
patch 8.2.2322: Vim9: closure nested limiting to one level
...
Problem: Vim9: closure nested limiting to one level.
Solution: Add outer_T. Also make STOREOUTER work.
2021-01-10 18:33:11 +01:00
Bram Moolenaar
ab360526ef
patch 8.2.2321: Vim9: cannot nest closures
...
Problem: Vim9: cannot nest closures.
Solution: Add the nesting level to ISN_LOADOUTER and ISN_STOREOUTER.
(closes #7150 , closes #7635 )
2021-01-10 14:02:28 +01:00
Bram Moolenaar
657137ca48
patch 8.2.2319: "exptype_T" can be read as "expected type"
...
Problem: "exptype_T" can be read as "expected type".
Solution: Rename to "exprtype_T", expression type.
2021-01-09 15:45:23 +01:00
Bram Moolenaar
32b3f82010
patch 8.2.2306: Vim9: when using function reference type is not checked
...
Problem: Vim9: when using function reference type is not checked.
Solution: When using a function reference lookup the type and check the
argument types. (issue #7629 )
2021-01-06 21:59:39 +01:00
Bram Moolenaar
d93a7fc1a9
patch 8.2.2295: incsearch does not detect empty pattern properly
...
Problem: Incsearch does not detect empty pattern properly.
Solution: Return magic state when skipping over a pattern. (Christian
Brabandt, closes #7612 , closes #6420 )
2021-01-04 12:42:13 +01:00
Bram Moolenaar
aa210a3aec
patch 8.2.2272: Vim9: extend() can violate the type of a variable
...
Problem: Vim9: extend() can violate the type of a variable.
Solution: Add the type to the dictionary or list and check items against it.
(closes #7593 )
2021-01-02 15:41:03 +01:00
Bram Moolenaar
8242ebbdba
patch 8.2.2242: Vim9: bar line continuation does not work at script level
...
Problem: Vim9: line continuation with bar does not work at script level.
Solution: Check for Vim9 script.
2020-12-29 11:15:01 +01:00
Bram Moolenaar
dcc58e031d
patch 8.2.2239: Vim9: concatenating lines with backslash is inconvenient
...
Problem: Vim9: concatenating lines with backslash is inconvenient.
Solution: Support concatenating lines starting with '|', useful for
:autocmd, :command, etc. (closes #6702 )
2020-12-28 20:53:21 +01:00
Bram Moolenaar
9b8d62267f
patch 8.2.2238: Vim9: cannot load a Vim9 script without the +eval feature
...
Problem: Vim9: cannot load a Vim9 script without the +eval feature.
Solution: Support Vim9 script syntax without the +eval feature.
2020-12-28 18:26:00 +01:00
Bram Moolenaar
a629495530
patch 8.2.2225: Vim9: error when using :import in legacy script twice
...
Problem: Vim9: error when using :import in legacy script twice.
Solution: Make it possible to redefine an import when reloading.
2020-12-27 13:39:50 +01:00
Bram Moolenaar
2b32700dab
patch 8.2.2222: Vim9: cannot keep script variables when reloading
...
Problem: Vim9: cannot keep script variables when reloading.
Solution: Add the "noclear" argument to :vim9script.
2020-12-26 15:39:31 +01:00
Bram Moolenaar
4aab88d919
patch 8.2.2208: Vim9: after reloading a script variable index may be invalid
...
Problem: Vim9: after reloading a script variable index may be invalid.
Solution: When the sequence number doesn't match give an error for using a
script-local variable from a compiled function. (closes #7547 )
2020-12-24 21:56:41 +01:00
Bram Moolenaar
cd45ed03bf
patch 8.2.2188: Vim9: crash when calling global function from :def function
...
Problem: Vim9: crash when calling global function from :def function.
Solution: Set the outer context. Define the partial for the context on the
original function. Use a refcount to keep track of which ufunc is
using a dfunc. (closes #7525 )
2020-12-22 17:35:54 +01:00
Bram Moolenaar
f4e2099e39
patch 8.2.2182: Vim9: value of 'magic' is still relevant
...
Problem: Vim9: value of 'magic' is still relevant.
Solution: Always behave like 'magic' is on in Vim9 script (closes #7509 )
2020-12-21 19:59:08 +01:00
Bram Moolenaar
f112f30a82
patch 8.2.2170: Vim9: a global function defined in a :def function fails
...
Problem: Vim9: a global function defined in a :def function fails if it
uses the context.
Solution: Create a partial to store the closure context. (see #7410 )
2020-12-20 17:47:52 +01:00
Bram Moolenaar
a452b808b4
patch 8.2.2077: build failure with small features
...
Problem: Build failure with small features.
Solution: Add #ifdef.
2020-12-01 21:47:59 +01:00
Bram Moolenaar
4324d87a44
patch 8.2.2074: Vim9: using :normal from Vim9 script can't handle range
...
Problem: Vim9: using :normal from Vim9 script can't handle range.
Solution: Execute a :normal command in legacy script context. (closes #7401 )
2020-12-01 20:12:24 +01:00
Bram Moolenaar
6a07644db3
patch 8.2.1990: cursor position wrong in terminal popup with finished job
...
Problem: Cursor position wrong in terminal popup with finished job.
Solution: Only add the top and left offset when not done already.
(closes #7298 )
2020-11-15 20:32:58 +01:00
Bram Moolenaar
cbcd9cbd77
patch 8.2.1966: popup becomes current window after closing a terminal window
...
Problem: Popup becomes current window after closing a terminal window.
Solution: When restoring the window after executing autocommands, check that
the window ID is still the same. (Naruhiko Nishino,
closes #7272 )
2020-11-07 16:58:59 +01:00
Bram Moolenaar
22286895fc
patch 8.2.1961: various comments can be improved
...
Problem: Various comments can be improved.
Solution: Various comment adjustments.
2020-11-05 20:50:51 +01:00
Bram Moolenaar
8133cc6bf4
patch 8.2.1909: number of status line items is limited to 80
...
Problem: Number of status line items is limited to 80.
Solution: Dynamically allocate the arrays. (Rom Grk, closes #7181 )
2020-10-26 21:05:27 +01:00
Bram Moolenaar
e100440158
patch 8.2.1898: command modifier parsing always uses global cmdmod
...
Problem: Command modifier parsing always uses global cmdmod.
Solution: Pass in cmdmod_T to use. Rename struct fields consistently.
2020-10-24 20:49:43 +02:00
Bram Moolenaar
5661ed6c83
patch 8.2.1897: command modifiers are saved and set inconsistently
...
Problem: Command modifiers are saved and set inconsistently.
Solution: Separate parsing and applying command modifiers. Save values in
cmdmod_T.
2020-10-24 17:19:16 +02:00
Bram Moolenaar
f4c6e1e75c
patch 8.2.1894: Vim9: command modifiers are not supported
...
Problem: Vim9: command modifiers are not supported.
Solution: Support "silent" and "silent!".
2020-10-23 18:02:32 +02: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
8d739de43b
patch 8.2.1845: Vim9: function defined in a block can't use block variables
...
Problem: Vim9: function defined in a block can't use variables defined in
that block.
Solution: First step: Make a second hashtab that holds all script variables,
also block-local ones, with more information.
2020-10-14 19:39:19 +02:00
Bram Moolenaar
9becdf2b98
patch 8.2.1826: Vim9: cannot use a {} block at script level
...
Problem: Vim9: cannot use a {} block at script level.
Solution: Recognize a {} block.
2020-10-10 21:33:48 +02:00
Bram Moolenaar
fcdc5d83fb
patch 8.2.1824: Vim9: variables at the script level escape their scope
...
Problem: Vim9: variables at the script level escape their scope.
Solution: When leaving a scope remove variables declared in it.
2020-10-10 19:07:09 +02:00
Bram Moolenaar
85d5e2b723
patch 8.2.1819: Vim9: Memory leak when using a closure
...
Problem: Vim9: Memory leak when using a closure.
Solution: Compute the mininal refcount in the funcstack. Reenable disabled
tests.
2020-10-10 14:13:01 +02:00
Bram Moolenaar
10c65860f8
patch 8.2.1813: Vim9: can assign wrong type to script dict
...
Problem: Vim9: can assign wrong type to script dict. (Christian J. Robinson)
Solution: Check the type if known.
2020-10-08 21:16:42 +02:00
Bram Moolenaar
2bb2658bef
patch 8.2.1795: Vim9: operators && and || have a confusing result
...
Problem: Vim9: operators && and || have a confusing result.
Solution: Make the result a boolean.
2020-10-03 22:52:39 +02:00
Bram Moolenaar
fb489af2ec
patch 8.2.1692: build fails because TTFLAG_STATIC is missing
...
Problem: Build fails because TTFLAG_STATIC is missing.
Solution: Include missing change.
2020-09-16 15:41:09 +02:00