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
98b4f145eb
patch 8.2.1395: Vim9: no error if declaring a funcref with lower case letter
...
Problem: Vim9: no error if declaring a funcref with a lower case letter.
Solution: Check the name after the type is inferred. Fix confusing name.
2020-08-08 15:46:01 +02:00
Bram Moolenaar
bb1b5e24ec
patch 8.2.1365: Vim9: no error for missing white space around operator
...
Problem: Vim9: no error for missing white space around operator.
Solution: Check for white space. (closes #6618 )
2020-08-05 10:53:21 +02:00
Bram Moolenaar
c2ee44cc38
patch 8.2.1355: Vim9: no error using :let for options and registers
...
Problem: Vim9: no error using :let for options and registers.
Solution: Give an error. (closes #6568 )
2020-08-02 16:59:00 +02:00
Bram Moolenaar
c7e44a7e4c
patch 8.2.1324: Vim9: line break after "=" does not work
...
Problem: Vim9: line break after "=" does not work.
Solution: Also allow for NUL after "=". (closes #6549 )
2020-07-29 21:37:43 +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
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
63be3d4ba0
patch 8.2.1274: Vim9: no error for missing white space at script level
...
Problem: Vim9: no error for missing white space in assignment at script
level.
Solution: Check for white space. (closes #6495 )
2020-07-23 13:11:37 +02:00
Bram Moolenaar
d43906d2e5
patch 8.2.1255: cannot use a lambda with quickfix functions
...
Problem: Cannot use a lambda with quickfix functions.
Solution: Add support for lambda. (Yegappan Lakshmanan, closes #6499 )
2020-07-20 21:31:32 +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
2b6ef856fb
patch 8.2.1184: some tests fail
...
Problem: Some tests fail.
Solution: Adjust tests for different assert_fails() behavior. Remove unused
variable.
2020-07-11 22:25:57 +02:00
Bram Moolenaar
9b7bf9e98f
patch 8.2.1183: assert_fails() checks the last error message
...
Problem: assert_fails() checks the last error message.
Solution: Check the first error, it is more relevant. Fix all the tests
that rely on the old behavior.
2020-07-11 22:14:59 +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
eeb27bfe28
patch 8.2.1126: Vim9: using :copen causes an error
...
Problem: Vim9: using :copen causes an error.
Solution: Add flag LET_NO_COMMAND in set_var().
2020-07-04 17:39:10 +02:00
Bram Moolenaar
9a78e6df17
patch 8.2.1111: inconsistent naming of get_list_tv() and eval_dict()
...
Problem: Inconsistent naming of get_list_tv() and eval_dict().
Solution: Rename get_list_tv() to eval_list(). Similarly for eval_number(),
eval_string(), eval_lit_string() and a few others.
2020-07-01 18:29:55 +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
Bram Moolenaar
faf8626b79
patch 8.2.1076: Vim9: no line break allowed in :if expression
...
Problem: Vim9: no line break allowed in :if expression.
Solution: Skip linebreak.
2020-06-27 23:07:36 +02:00
Bram Moolenaar
e40fbc2ca9
patch 8.2.1071: Vim9: no line break allowed inside a lambda
...
Problem: Vim9: no line break allowed inside a lambda.
Solution: Handle line break inside a lambda in Vim9 script.
2020-06-27 18:06:45 +02:00
Bram Moolenaar
0b1cd52ff6
patch 8.2.1067: expression "!expr->func()" does not work
...
Problem: Expression "!expr->func()" does not work.
Solution: Apply plus and minus earlier. (closes #6348 )
2020-06-27 13:11:50 +02:00
Bram Moolenaar
b171fb1790
patch 8.2.1049: Vim9: leaking memory when using continuation line
...
Problem: Vim9: leaking memory when using continuation line.
Solution: Keep a pointer to the continuation line in evalarg_T. Centralize
checking for a next command.
2020-06-24 20:34:03 +02:00
Bram Moolenaar
5409f5d8c9
patch 8.2.1047: Vim9: script cannot use line continuation like :def function
...
Problem: Vim9: script cannot use line continuation like in a :def function.
Solution: Pass the getline function pointer to the eval() functions. Use it
for addition and multiplication operators.
2020-06-24 18:37:35 +02:00
Bram Moolenaar
e55b1c098d
patch 8.2.1028: Vim9: no error for declaring buffer, window, etc. variable
...
Problem: Vim9: no error for declaring buffer, window, etc. variable.
Solution: Give an error. Unify the error messages.
2020-06-21 15:52:59 +02:00
Bram Moolenaar
6797966dfc
patch 8.2.1024: Vim9: no error for using "let g:var = val"
...
Problem: Vim9: no error for using "let g:var = val".
Solution: Add an error.
2020-06-20 22:50:47 +02:00
Bram Moolenaar
0cb5bcf583
patch 8.2.1023: Vim9: redefining a function uses a new index every time
...
Problem: Vim9: redefining a function uses a new index every time.
Solution: When redefining a function clear the contents and re-use the
index.
2020-06-20 18:19:09 +02:00
Bram Moolenaar
c785b9a7f4
patch 8.2.1011: Vim9: some code not tested
...
Problem: Vim9: some code not tested.
Solution: Add a few more test cases. Reorder checks for clearer error.
Remove unreachable code.
2020-06-19 18:34:15 +02:00
Bram Moolenaar
84cf6bd81b
patch 8.2.0988: getting directory contents is always case sorted
...
Problem: Getting directory contents is always case sorted.
Solution: Add sort options and v:collate. (Christian Brabandt, closes #6229 )
2020-06-16 20:03:43 +02:00
Bram Moolenaar
47a519a933
patch 8.2.0981: Vim9: cannot compile "[var, var] = list"
...
Problem: Vim9: cannot compile "[var, var] = list".
Solution: Implement list assignment.
2020-06-14 23:05:10 +02:00
Bram Moolenaar
34db91f7a4
patch 8.2.0973: Vim9: type is not checked when assigning to a script variable
...
Problem: Vim9: type is not checked when assigning to a script variable.
Solution: Check the type.
2020-06-13 19:00:10 +02:00
Bram Moolenaar
c82a5b5da5
patch 8.2.0972: Vim9 script variable declarations need a type
...
Problem: Vim9 script variable declarations need a type.
Solution: Make "let var: type" declare a script-local variable.
2020-06-13 18:09:19 +02:00
Bram Moolenaar
71ccd03ee8
patch 8.2.0967: unnecessary type casts for vim_strnsave()
...
Problem: Unnecessary type casts for vim_strnsave().
Solution: Remove the type casts.
2020-06-12 22:59:11 +02:00
Bram Moolenaar
9721fb4ea3
patch 8.2.0960: cannot use :import in legacy Vim script
...
Problem: Cannot use :import in legacy Vim script.
Solution: Support :import in any Vim script.
2020-06-11 23:10:46 +02:00
Bram Moolenaar
a9c0104947
patch 8.2.0918: duplicate code for evaluating expression argument
...
Problem: Duplicate code for evaluating expression argument.
Solution: Merge the code and make the use more flexible.
2020-06-07 14:50:50 +02:00
Bram Moolenaar
adc17a5f9d
patch 8.2.0915: search() cannot skip over matches like searchpair() can
...
Problem: Search() cannot skip over matches like searchpair() can.
Solution: Add an optional "skip" argument. (Christian Brabandt, closes #861 )
2020-06-06 18:37:51 +02:00
Bram Moolenaar
439c036ed0
patch 8.2.0913: code for resetting v:register is duplicated
...
Problem: Code for resetting v:register is duplicated.
Solution: Add reset_reg_var().
2020-06-06 15:58:03 +02:00
Bram Moolenaar
2eec37926d
patch 8.2.0822: Vim9: code left over from discovery phase
...
Problem: Vim9: code left over from discovery phase.
Solution: Remove the dead code.
2020-05-25 20:33:55 +02:00
Bram Moolenaar
f40e51a880
patch 8.2.0819: compiler warning for unused variable
...
Problem: Compiler warning for unused variable.
Solution: Remove the variable.
2020-05-24 23:14:23 +02:00
Bram Moolenaar
822ba24743
patch 8.2.0818: Vim9: using a discovery phase doesn't work well
...
Problem: Vim9: using a discovery phase doesn't work well.
Solution: Remove the discovery phase, instead compile a function only when
it is used. Add :defcompile to compile def functions earlier.
2020-05-24 23:00:18 +02:00
Bram Moolenaar
32e351179e
patch 8.2.0753: Vim9: expressions are evaluated in the discovery phase
...
Problem: Vim9: expressions are evaluated in the discovery phase.
Solution: Bail out if an expression is not a constant. Require a type for
declared constants.
2020-05-14 22:41:15 +02:00
Bram Moolenaar
7e9f351b2e
patch 8.2.0751: Vim9: performance can be improved
...
Problem: Vim9: performance can be improved.
Solution: Don't call break. Inline check for list materialize. Make an
inline version of ga_grow().
2020-05-13 22:44:22 +02:00
Bram Moolenaar
09689a0284
patch 8.2.0725: Vim9: cannot call a function declared later in Vim9 script
...
Problem: Vim9: cannot call a function declared later in Vim9 script.
Solution: Make two passes through the script file.
2020-05-09 22:50:08 +02:00
Bram Moolenaar
7d3664df90
patch 8.2.0718: gcc warning for returning pointer to local variable
...
Problem: Gcc warning for returning pointer to local variable. (John
Marriott)
Solution: Return another pointer.
2020-05-09 13:06:24 +02:00
Bram Moolenaar
b84a381c75
patch 8.2.0675: Vim9: no support for closures
...
Problem: Vim9: no support for closures.
Solution: Do not re-use stack entries.
2020-05-01 15:44:29 +02:00
Bram Moolenaar
6ab0953fef
patch 8.2.0672: heredoc in scripts does not accept lower case marker
...
Problem: Heredoc in scripts does not accept lower case marker.
Solution: Allow lower case only in non-Vim scripts. (Ken Takata,
closes #6019 )
2020-05-01 14:10:13 +02:00
Bram Moolenaar
65d032c779
patch 8.2.0629: setting a boolean option to v:false does not work
...
Problem: Setting a boolean option to v:false does not work.
Solution: Do not use the string representation of the value. (Christian
Brabandt, closes #5974 )
2020-04-24 20:57:01 +02:00
Bram Moolenaar
faac410409
patch 8.2.0611: Vim9: no check for space before #comment
...
Problem: Vim9: no check for space before #comment.
Solution: Add space checks.
2020-04-20 17:46:14 +02:00
Bram Moolenaar
2bb76accc6
patch 8.2.0607: gcc warns for using uninitialized variable
...
Problem: Gcc warns for using uninitialized variable. (John Marriott)
Solution: Set name_end also for environment variables.
2020-04-19 22:57:44 +02:00
Bram Moolenaar
7e0868efcf
patch 8.2.0602: :unlet $VAR does not work properly
...
Problem: :unlet $VAR does not work properly.
Solution: Make ":lockvar $VAR" fail. Check the "skip" flag.
2020-04-19 17:24:53 +02:00
Bram Moolenaar
d72c1bf0a6
patch 8.2.0601: Vim9: :unlet is not compiled
...
Problem: Vim9: :unlet is not compiled.
Solution: Implement :unlet instruction and check for errors.
2020-04-19 16:28:59 +02:00
Bram Moolenaar
6c2b7b8055
patch 8.2.0578: heredoc for interfaces does not support "trim"
...
Problem: Heredoc for interfaces does not support "trim".
Solution: Update the script heredoc support to be same as the :let command.
(Yegappan Lakshmanan, closes #5916 )
2020-04-14 20:15:49 +02:00
Bram Moolenaar
cab2767874
patch 8.2.0537: Vim9: no check for sandbox when setting v:var
...
Problem: Vim9: no check for sandbox when setting v:var.
Solution: Check for sandbox.
2020-04-09 20:10:55 +02:00