Yegappan Lakshmanan
f36bbcd402
patch 9.0.1890: Vim9: lookup code for class/object repaeated
...
Problem: Vim9: lookup code for class/object repaeated
Solution: Refactor and make use of lookup functions
closes : #13067
Signed-off-by: Christian Brabandt <cb@256bit.org >
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com >
2023-09-10 18:19:06 +02:00
Bram Moolenaar
c6951a76a5
patch 9.0.1108: type error when using "any" type and adding to float
...
Problem: Type error when using "any" type and adding a number to a float.
Solution: Accept both a number and a float. (closes #11753 )
2022-12-29 20:56:24 +00:00
Bram Moolenaar
766ae5b252
patch 9.0.0460: loop variable can't be found
...
Problem: Loop variable can't be found.
Solution: Adjust block_id of the loop variable each round.
2022-09-14 00:30:51 +01:00
Bram Moolenaar
0abc2871c1
patch 8.2.4930: interpolated string expression requires escaping
...
Problem: Interpolated string expression requires escaping.
Solution: Do not require escaping in the expression.
2022-05-10 13:24:30 +01:00
LemonBoy
2eaef106e4
patch 8.2.4883: string interpolation only works in heredoc
...
Problem: String interpolation only works in heredoc.
Solution: Support interpolated strings. Use syntax for heredoc consistent
with strings, similar to C#. (closes #10327 )
2022-05-06 13:14:50 +01:00
Yegappan Lakshmanan
1fc6ea9bf3
patch 8.2.4804: expression in heredoc doesn't work for compiled function
...
Problem: Expression in heredoc doesn't work for compiled function.
Solution: Implement compiling the heredoc expressions. (Yegappan Lakshmanan,
closes #10232 )
2022-04-21 23:30:15 +01:00
Bram Moolenaar
97f8c1081e
patch 8.2.4666: Vim9: assignment not recognized in skipped block
...
Problem: Vim9: assignment not recognized in skipped block.
Solution: When skipping assume identifier exists. (closes #10059 )
2022-04-02 19:43:57 +01:00
Bram Moolenaar
139575de66
patch 8.2.4575: Vim9: test for profiling still fails
...
Problem: Vim9: test for profiling still fails.
Solution: Update flags for profiling and breakpoints when obtaining the
compile type. Do not set the FC_CLOSURE flag for a toplevel
function.
2022-03-15 19:29:30 +00:00
Bram Moolenaar
4b1d963972
patch 8.2.4375: ctx_imports is not used
...
Problem: ctx_imports is not used.
Solution: Delete ctx_imports. Add missing dependency.
2022-02-13 21:51:08 +00:00
Bram Moolenaar
b6a138eb33
patch 8.2.4333: cstack not always passed to where it is needed
...
Problem: cstack not always passed to where it is needed.
Solution: Pass ctack through functions.
2022-02-08 21:17:22 +00:00
Bram Moolenaar
dce2441a60
patch 8.2.4332: Vim9: incomplete test for existing script variable in block
...
Problem: Vim9: incomplete test for existing script variable in block.
Solution: Add a couple more tests. Fix uncovered problem.
2022-02-08 20:35:30 +00:00
Bram Moolenaar
a1c5195180
patch 8.2.4285: Vim9: type of item in for loop not checked properly
...
Problem: Vim9: type of item in for loop not checked properly.
Solution: Adjust the type checking. (closes #9683 )
2022-02-02 16:20:26 +00:00
Bram Moolenaar
dc4451df61
patch 8.2.4050: Vim9: need to prefix every item in an autoload script
...
Problem: Vim9: need to prefix every item in an autoload script.
Solution: First step in supporting "vim9script autoload" and "import
autoload".
2022-01-09 21:36:37 +00:00
Yegappan Lakshmanan
782b43d894
patch 8.2.4045: some global functions are only used in one file
...
Problem: Some global functions are only used in one file.
Solution: Make the functions static. (Yegappan Lakshmanan, closes #9492 )
2022-01-08 18:43:40 +00:00
Bram Moolenaar
dc7c366f3a
patch 8.2.3860: Vim9: codecov struggles with the file size
...
Problem: Vim9: codecov struggles with the file size.
Solution: Split vim9compile.c into four files.
2021-12-20 15:04:29 +00:00
Bram Moolenaar
7b82926892
patch 8.2.3503: Vim9: using g:pat:cmd is confusing
...
Problem: Vim9: using g:pat:cmd is confusing.
Solution: Do not recognize g: as the :global command. Also for s:pat:repl.
(closes #8982 )
2021-10-13 15:04:34 +01:00
Bram Moolenaar
bf5f287833
patch 8.2.3365: Vim9: cannot use option for all operations
...
Problem: Vim9: cannot use option for all operations.
Solution: Recognize more operations. (closes #8779 )
2021-08-21 20:50:35 +02:00
Yegappan Lakshmanan
8ee52affe7
patch 8.2.3320: some local functions are not static
...
Problem: Some local functions are not static.
Solution: Add "static". Move snprintf() related code to strings.c.
(Yegappan Lakshmanan, closes #8734 )
2021-08-09 19:59:06 +02:00
Bram Moolenaar
9bb0dad0d8
patch 8.2.3187: Vim9: popup timer callback is not compiled
...
Problem: Vim9: popup timer callback is not compiled.
Solution: Compile the callback when creating the timer.
2021-07-19 22:19:29 +02:00
Bram Moolenaar
e99d422bbd
patch 8.2.2985: Vim9: a compiled function cannot be debugged
...
Problem: Vim9: a compiled function cannot be debugged.
Solution: Add initial debugging support.
2021-06-13 14:01:26 +02:00
Bram Moolenaar
15e5e53ef2
patch 8.2.2734: Vim9: cannot use legacy script-local var from :def function
...
Problem: Vim9: cannot use legacy script-local var from :def function.
Solution: Do not insist on using "s:" prefix. (closes #8076 )
2021-04-07 21:21:13 +02:00
Bram Moolenaar
7a6eaa06f9
patch 8.2.2635: Vim9: cannot define an inline function
...
Problem: Vim9: cannot define an inline function.
Solution: Make an inline function mostly work.
2021-03-21 20:53:29 +01:00
Bram Moolenaar
057e84afe5
patch 8.2.2558: no error if a lambda argument shadows a variable
...
Problem: No error if a lambda argument shadows a variable.
Solution: Check that the argument name shadows a local, argument or script
variable. (closes #7898 )
2021-02-28 16:55:11 +01:00
Bram Moolenaar
b4893b8450
patch 8.2.2540: Vim9: no error for using script var name for argument
...
Problem: Vim9: no error for using script var name for argument.
Solution: Check for this error. (closes #7868 )
2021-02-21 22:20:24 +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
351ead09dd
patch 8.2.2362: Vim9: check of builtin function argument type is incomplete
...
Problem: Vim9: check of builtin function argument type is incomplete.
Solution: Use need_type() instead of check_arg_type().
2021-01-16 16:07:01 +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
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
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
bebaa0d5c0
patch 8.2.2020: some compilers do not like the "namespace" argument
...
Problem: Some compilers do not like the "namespace" argument.
Solution: Rename to "use_namespace". (closes #7332 )
2020-11-20 18:59:19 +01:00
Bram Moolenaar
2bede173a1
patch 8.2.2015: Vim9: literal dict #{} is not like any other language
...
Problem: Vim9: literal dict #{} is not like any other language.
Solution: Support the JavaScript syntax.
2020-11-19 18:53:18 +01:00
Bram Moolenaar
193f6201b4
patch 8.2.1996: Vim9: invalid error for argument of extend()
...
Problem: Vim9: invalid error for argument of extend().
Solution: Check if the type could match. (closes #7299 )
2020-11-16 20:08:35 +01: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
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
a7cc9e697b
patch 8.2.1405: Vim9: vim9compile.c is getting too big
...
Problem: Vim9: vim9compile.c is getting too big.
Solution: Split off type code to vim9type.c.
2020-08-09 15:25:14 +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
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
696ba23149
patch 8.2.1323: Vim9: invalid operators only rejected in :def function
...
Problem: Vim9: invalid operators only rejected in :def function.
Solution: Also reject them at script level. (closes #6564 )
2020-07-29 21:20:41 +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
4cdb13ce81
patch 8.2.1272: Vim9: type not checked if declaration also assigns value
...
Problem: Vim9: type not checked if declaration also assigns value.
Solution: Check the type. (issue #6507 )
2020-07-22 21:45:14 +02:00
Bram Moolenaar
75783bd84e
patch 8.2.1243: Vim9: cannot have a comment line halfway a list
...
Problem: Vim9: cannot have a comment or empty line halfway a list at script
level.
Solution: Skip more than one line if needed.
2020-07-19 14:41:58 +02:00
Bram Moolenaar
65b9545f44
patch 8.2.1242: Vim9: no error if calling a function with wrong type
...
Problem: Vim9: no error if calling a function with wrong argument type.
Solution: Check types of arguments. (closes #6469 )
2020-07-19 14:03:09 +02:00
Bram Moolenaar
543e6f3467
patch 8.2.1176: Vim9: not enough type checking in Vim9 script
...
Problem: Vim9: not enough type checking in Vim9 script.
Solution: Use same type checking as in a :def function.
2020-07-10 22:45:38 +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
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
cbb6bdcd89
patch 8.2.1148: warning for using int instead of size_t
...
Problem: Warning for using int instead of size_t.
Solution: Change "len" argument to size_t. (Mike Williams)
2020-07-06 21:53:17 +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
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
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
6ff71d8b7f
patch 8.2.0820: Vim9: function type isn't set until compiled
...
Problem: Vim9: function type isn't set until compiled.
Solution: Set function type early.
2020-05-24 23:45:24 +02:00