| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Problem: Vim9: for loop variable can be a list member.
Solution: Check for valid variable name. (closes #9179)
|
|
|
|
|
|
| |
Problem: Using freed memory with lambda.
Solution: Do not free lines early, keep them until the expression is
finished.
|
|
|
|
|
|
| |
Problem: Garbage collection while evaluating may cause trouble.
Solution: Disable garbage collection while evaluating an expression.
(Christian Brabandt, issue #8848)
|
|
|
|
|
|
| |
Problem: Vim9: no check for white space before type in declaration.
(Naohiro Ono)
Solution: Check for white space like in a compiled function. (closes #8785)
|
|
|
|
|
|
| |
Problem: Check for legacy script is incomplete. (Naohiro Ono)
Solution: Also check the :legacy modifier. Use for string concatenation
with "." and others (issue #8756)
|
|
|
|
|
|
| |
Problem: Vim9: no error for using "." for concatenation after ":vim9cmd".
(Naohiro Ono)
Solution: Check for Vim9 script syntax. (closes #8756)
|
|
|
|
|
| |
Problem: Accessing uninitialized pointer.
Solution: Set pointer to NULL.
|
|
|
|
|
| |
Problem: Vim9: cannot lock a member in a local dict.
Solution: Get the local dict from the stack and pass it to get_lval().
|
|
|
|
|
| |
Problem: Vim9: cannot assign to range in list.
Solution: Implement overwriting a list range.
|
|
|
|
|
|
| |
Problem: Cannot use all commands inside a {} block after :command and
:autocmd.
Solution: Do consider \n to separate commands. (closes #8620)
|
|
|
|
|
|
| |
Problem: No error for insert() or remove() changing a locked blob.
Solution: Check a blob is not locked before changing it. (Sean Dewar,
closes #8696)
|
|
|
|
|
| |
Problem: Vim9: assign test fails.
Solution: Add missing change.
|
|
|
|
|
| |
Problem: Vim9: error for re-imported function with default argument.
Solution: Do not check argument type if it is still unknown. (closes #8653)
|
|
|
|
|
|
| |
Problem: Vim9: runtime and compile time type checks are not the same.
Solution: Add more runtime type checks for builtin functions. (Yegappan
Lakshmanan, closes #8646)
|
|
|
|
|
|
| |
Problem: Cannot call script-local function after :vim9cmd. (Christian J.
Robinson)
Solution: Skip over "<SNR>123".
|
|
|
|
|
|
|
| |
Problem: Vim9: crash when using variable in a loop at script level.
Solution: Do not clear the variable if a function was defined.
Do not create a new entry in sn_var_vals every time.
(closes #8628)
|
|
|
|
|
| |
Problem: Crash in test.
Solution: Initialize "where".
|
|
|
|
|
| |
Problem: Vim9: hard to guess where a type error is given.
Solution: Add the function name where possible. (closes #8608)
|
|
|
|
|
|
| |
Problem: Vim9: argument types are not checked at compile time.
Solution: Add several more type checks, also at runtime. (Yegappan
Lakshmanan, closes #8587)
|
|
|
|
|
| |
Problem: Vim9: cannot assign to an imported variable at script level.
Solution: Lookup imported items when assigning.
|
|
|
|
|
| |
Problem: Vim9: can not use "for _ in expr" at script level.
Solution: Skip assignment if the loop variable is "_".
|
|
|
|
|
|
| |
Problem: Vim9: using illegal pointer with inline function inside a lambda.
Solution: Clear eval_tofree_cmdline when advancing to the next line.
(closes #8578)
|
|
|
|
|
| |
Problem: Vim9: line number wrong for :execute argument.
Solution: Use the line number of the :execute command itself. (closes #8537)
|
|
|
|
|
|
| |
Problem: Vim9: no error when using an invalid value for a line number.
Solution: Give an error if the string value is not recognized.
(closes #8536)
|
|
|
|
|
|
| |
Problem: Functions for string manipulation are spread out.
Solution: Move string related functions to a new source file. (Yegappan
Lakshmanan, closes #8470)
|
|
|
|
|
| |
Problem: Vim9: imported uninitialized list does not get type checked.
Solution: Get type from imported variable.
|
|
|
|
|
| |
Problem: Vim9: uninitialzed list does not get type checked.
Solution: Set the type when initializing the variable. (closes #8529)
|
|
|
|
|
| |
Problem: No error when for loop variable shadows script variable.
Solution: Check for the error. (closes #8512)
|
|
|
|
|
| |
Problem: Vim9: confusing error with extra whitespace before colon.
Solution: Check for colon after white space. (closes #8513)
|
|
|
|
|
| |
Problem: Error messages are spread out.
Solution: Move some error messages to errors.h. Use clearer names.
|
|
|
|
|
| |
Problem: Vim9: in script cannot set item in uninitialized list.
Solution: When a list is NULL allocate an empty one. (closes #8461)
|
|
|
|
|
| |
Problem: Strange error for assigning to "x.key" on non-dictionary.
Solution: Add a specific error message. (closes #8451)
|
|
|
|
|
| |
Problem: Confusing error when expression is followed by comma.
Solution: Give a different error for trailing text. (closes #8395)
|
|
|
|
|
| |
Problem: Vim9: a compiled function cannot be debugged.
Solution: Add initial debugging support.
|
|
|
|
|
| |
Problem: Vim9: an inline function requires specifying the return type.
Solution: Make the return type optional.
|
|
|
|
|
| |
Problem: Warning for uninitialized variable.
Solution: Set return value to FAIL.
|
|
|
|
|
| |
Problem: Crash when using a null function reference. (Naohiro Ono)
Solution: Check for an invalid function name. (closes #8367)
|
|
|
|
|
| |
Problem: Vim9: memory leak
Solution: Unreference pt_outer of partial.
|
|
|
|
|
| |
Problem: Vim9: hang when using space after ->. (Naohiro Ono)
Solution: Skip over white space to find the function name. (closes #8341)
|
|
|
|
|
| |
Problem: Build failure without the channel feature.
Solution: Add back #ifdef. (John Marriott)
|
|
|
|
|
| |
Problem: Vim9: no error when using job or channel as a string.
Solution: Be more strict about conversion to string. (closes #8312)
|
|
|
|
|
|
| |
Problem: The evalfunc.c file is too big.
Solution: Move float related functionality to a separate file. (Yegappan
Lakshmanan, closes #8287)
|
|
|
|
|
| |
Problem: EBCDIC build is broken.
Solution: Move sortFunctions() to evalfunc.c. (Ken Takata, closes #8306)
|
|
|
|
|
| |
Problem: Computing array length is done in various ways.
Solution: Use ARRAY_LENGTH everywhere. (Ken Takata, closes #8305)
|
|
|
|
|
| |
Problem: Still a way to shadow a builtin function. (Yasuhiro Matsumoto)
Solution: Check the key when using extend(). (issue #8302)
|
|
|
|
|
|
| |
Problem: Builtin function can be shadowed by global variable.
Solution: Check for builtin function before variable. (Yasuhiro Matsumoto,
closes #8302)
|
|
|
|
|
| |
Problem: Vim9: can use reserved words at the script level.
Solution: Check variable names for reserved words. (closes #8253)
|
|
|
|
|
| |
Problem: Vim9: random characters appear in some error messages.
Solution: Pass the correct pointer. (closes #8277)
|
|
|
|
|
|
| |
Problem: Error message contains random characters.
Solution: Pass the right pointer to error_white_both(). (closes #8272,
closes #8263)
|
|
|
|
|
| |
Problem: Vim9: memory leak when using inline function.
Solution: Remember what strings to free.
|