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
Bram Moolenaar
c1ec0422e4
patch 8.2.1650: Vim9: result of && and || expression is not bool in script
...
Problem: Vim9: result of && and || expression cannot be assigned to a bool
at the script level.
Solution: Add the VAR_BOOL_OK flag. Convert to bool when needed.
2020-09-09 22:27:58 +02:00
Bram Moolenaar
29a86ffee7
patch 8.2.1641: Vim9: cannot use 0 or 1 where a bool is expected
...
Problem: Vim9: cannot use 0 or 1 where a bool is expected.
Solution: Allow using 0 and 1 for a bool type. (closes #6903 )
2020-09-09 14:55:31 +02:00
Bram Moolenaar
6defa7bf0a
patch 8.2.1636: get stuck if a popup filter causes an error
...
Problem: Get stuck if a popup filter causes an error.
Solution: Check whether the function can be called and does not cause an
error. (closes #6902 )
2020-09-08 22:06:44 +02:00
Bram Moolenaar
39f7aa3c31
patch 8.2.1556: cursorline highlighting always overrules sign highlighting
...
Problem: Cursorline highlighting always overrules sign highlighting.
Solution: Combine the highlighting, use the priority to decide how.
(closes #6812 )
2020-08-31 22:00:05 +02:00
Bram Moolenaar
20b23c6358
patch 8.2.1492: build failures
...
Problem: Build failures.
Solution: Move typedef out of #ifdef. Adjust argument types. Discover
America.
2020-08-20 15:25:00 +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
097148e849
patch 8.2.1422: the Mac GUI implementation is outdated
...
Problem: The Mac GUI implementation is outdated and probably doesn't even
work.
Solution: Remove the Mac GUI code. The MacVim project provides the
supported Vim GUI version.
2020-08-11 21:58:20 +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
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
de2396fc87
patch 8.2.1239: "maxwidth" in 'completepopup' not obeyed
...
Problem: "maxwidth" in 'completepopup' not obeyed. (Jay Sitter)
Solution: Add separate field for value from option. (closes #6470 )
2020-07-18 21:40:41 +02:00
Bram Moolenaar
49fe0d6b28
patch 8.2.1208: build failure
...
Problem: Build failure.
Solution: Add missing change.
2020-07-14 15:47:23 +02:00
Bram Moolenaar
985116ae0b
patch 8.2.1191: Vim9: crash when function calls itself
...
Problem: Vim9: crash when function calls itself.
Solution: Add status UF_COMPILING. (closes #6441 )
2020-07-12 17:31: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
7a4b8980ea
patch 8.2.1155: Vim9: cannot handle line break inside lambda
...
Problem: Vim9: cannot handle line break inside lambda.
Solution: Pass the compilation context through. (closes #6407 , closes #6409 )
2020-07-08 17:36:21 +02:00
Bram Moolenaar
c620c055ce
patch 8.2.1154: Vim9: crash when using imported function
...
Problem: Vim9: crash when using imported function.
Solution: Check for a function type. Set the script context when calling a
function. (closes #6412 )
2020-07-08 15:16:19 +02:00
Bram Moolenaar
b7a78f7a67
patch 8.2.1080: Vim9: no line break allowed in a for loop
...
Problem: Vim9: no line break allowed in a for loop.
Solution: Skip line breaks in for command.
2020-06-28 18:43:40 +02:00
Bram Moolenaar
d5053d015a
patch 8.2.1079: Vim9: no line break allowed in a while loop
...
Problem: Vim9: no line break allowed in a while loop.
Solution: Update stored loop lines when finding line breaks.
2020-06-28 15:51:16 +02:00