Bram Moolenaar
d8e44476d8
patch 8.2.3197: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move a few more error messages to errors.h.
2021-07-21 22:20:33 +02:00
Bram Moolenaar
05bd9785fd
patch 8.2.3196: Vim9: bool expression with numbers only fails at runtime
...
Problem: Vim9: bool expression with numbers only fails at runtime.
Solution: Check constant to be bool at compile time. (closes #8603 )
2021-07-21 21:37:28 +02:00
Bram Moolenaar
c4c5642513
patch 8.2.3195: Vim9: unclear error when passing too many arguments to lambda
...
Problem: Vim9: unclear error when passing too many arguments to lambda.
Solution: Pass the expression itself instead of "[expression]".
(closes #8604 )
2021-07-21 20:38:46 +02:00
Bram Moolenaar
63cb6567f0
patch 8.2.3191: Vim9: not enough code is tested
...
Problem: Vim9: not enough code is tested.
Solution: Use CheckLegacyAndVim9Success() in more places. Fix uncovered
problems.
2021-07-20 22:21:59 +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
4db572eeb2
patch 8.2.3178: Vim9: the file name of an :import cannot be an expression
...
Problem: Vim9: the file name of an :import cannot be an expression.
Solution: Accept an expression that results in a string. Do not support
:import in a function.
2021-07-18 18:21:38 +02:00
Bram Moolenaar
47bc9c3337
patch 8.2.3174: Vim9: "legacy undo" finds "undo" variable
...
Problem: Vim9: "legacy undo" finds "undo" variable.
Solution: Do not pass lookup function to find_ex_command(). (closes #8563 )
2021-07-17 21:24:56 +02:00
Bram Moolenaar
378697ac58
patch 8.2.3168: Vim9: type error for constant of type any
...
Problem: Vim9: type error for constant of type any.
Solution: Do add a runtime type check if a constant has type any.
(closes #8570 )
2021-07-15 19:23:18 +02:00
Bram Moolenaar
9e60e899ee
patch 8.2.3165: Vim9: in a || expression the error line number may be wrong
...
Problem: Vim9: in a || expression the error line number may be wrong.
Solution: Save and restore the line number when checking the type.
(closes #8569 )
2021-07-15 15:40:58 +02:00
Bram Moolenaar
ffcfddc759
patch 8.2.3151: Vim9: profiling fails if nested function is also profiled
...
Problem: Vim9: profiling fails if nested function is also profiled.
Solution: Use the compile type from the outer function. (closes #8543 )
2021-07-11 20:22:30 +02:00
Bram Moolenaar
5231224e11
patch 8.2.3148: Vim9: function arg type check does not handle base offset
...
Problem: Vim9: function arg type check does not handle base offset.
Solution: Take the base offset into account when checking builtin function
argument types.
2021-07-11 18:23:19 +02:00
Bram Moolenaar
648594eaf7
patch 8.2.3147: Vim9: profiling does not work with a nested function
...
Problem: Vim9: profiling does not work with a nested function.
Solution: Also compile a nested function without profiling. (closes #8543 )
Handle that compiling may cause the table of compiled functions to
change.
2021-07-11 17:55:01 +02:00
Bram Moolenaar
d9162550aa
patch 8.2.3143: Vim9: wrong context if lambda called from profiled function
...
Problem: Vim9: A lambda may be compiled with the wrong context if it is
called from a profiled function.
Solution: Compile the lambda with and without profiling. (closes #8543 )
2021-07-11 15:26:13 +02:00
Bram Moolenaar
c323527d67
patch 8.2.3137: Vim9: no error when a line only has a variable name
...
Problem: Vim9: no error when a line only has a variable name.
Solution: Give an error when an expression is evaluated without an effect.
(closes #8538 )
2021-07-10 19:42:03 +02:00
Bram Moolenaar
5ede5b231e
patch 8.2.3118: Vim9: "any" type not handled correctly in for loop
...
Problem: Vim9: "any" type not handled correctly in for loop.
Solution: Change compile time check into runtime check. (closes #8516 )
2021-07-07 21:55:25 +02:00
Bram Moolenaar
efc5db5215
patch 8.2.3117: Vim9: type not properly checked in for loop
...
Problem: Vim9: type not properly checked in for loop.
Solution: Have items() return a list of lists. Add runtime type checks.
(closes #8515 )
2021-07-07 21:21:30 +02:00
Bram Moolenaar
404557e6a6
patch 8.2.3111: Vim9: confusing error with extra whitespace before colon
...
Problem: Vim9: confusing error with extra whitespace before colon.
Solution: Check for colon after white space. (closes #8513 )
2021-07-05 21:41:48 +02:00
Bram Moolenaar
6977dba04b
patch 8.2.3106: Vim9: confusing line number reported for error
...
Problem: Vim9: confusing line number reported for error.
Solution: Use the start line number for the store instruction.
(closes #8488 )
2021-07-04 22:48:12 +02:00
Bram Moolenaar
e28d9b3bd4
patch 8.2.3091: Vim9: default argument expr. cannot use previous argument
...
Problem: Vim9: default argument expression cannot use previous argument
Solution: Correct argument index. (closes #8496 )
2021-07-03 18:56:53 +02:00
Bram Moolenaar
6fc0161682
patch 8.2.3086: Vim9: breakpoint on "for" does not work
...
Problem: Vim9: breakpoint on "for" does not work.
Solution: Use the right line number in ISN_DEBUG. (closes #8486 )
2021-07-03 13:36:31 +02:00
Bram Moolenaar
834193afd7
patch 8.2.3078: Vim9: profile test fails
...
Problem: Vim9: profile test fails.
Solution: Make throw in :catch jump to :finally.
2021-06-30 20:39:15 +02:00
Bram Moolenaar
108010aa47
patch 8.2.3069: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move some error messages to errors.h. Use clearer names.
2021-06-27 22:03:33 +02:00
Bram Moolenaar
17d868b8b2
patch 8.2.3066: Vim9: debugging lambda does not work
...
Problem: Vim9: debugging lambda does not work.
Solution: Use the compile type of the function when compiling a lambda.
(closes #8412 )
2021-06-27 16:29:53 +02:00
Bram Moolenaar
577dc93da9
patch 8.2.3065: Vim9: error when sourcing script twice and reusing function
...
Problem: Vim9: error when sourcing script twice and reusing a function
name.
Solution: Check if the function is dead. (closes #8463 )
2021-06-27 15:35:40 +02:00
Bram Moolenaar
4d5dfe2083
patch 8.2.3054: Vim9: unpack assignment using "_" after semicolon fails
...
Problem: Vim9: unpack assignment using "_" after semicolon fails.
Solution: Drop the expression result. (closes #8453 )
2021-06-26 13:59:29 +02:00
Bram Moolenaar
13e45d14ba
patch 8.2.3053: Vim9: cannot assign to @@ in :def function
...
Problem: Vim9: cannot assign to @@ in :def function
Solution: Handle '@' like '"'.
2021-06-26 13:28:35 +02:00
Bram Moolenaar
ce024c3e20
patch 8.2.3052: Vim9: "legacy call" does not work
...
Problem: Vim9: "legacy call" does not work.
Solution: Do not skip "call" after "legacy". (closes #8454 )
2021-06-26 13:00:49 +02:00
Bram Moolenaar
444d878324
patch 8.2.3051: Vim9: for loop with one list variable does not work
...
Problem: Vim9: for loop with one list variable does not work.
Solution: Use a separate flag for unpacking a list. (closes #8452 )
2021-06-26 12:40:56 +02:00
Bram Moolenaar
22480d147f
patch 8.2.3048: strange error for white space after ++ command
...
Problem: Strange error for white space after ++ command.
Solution: Check for white space explicitly. (closes #8440 )
2021-06-25 21:31:09 +02:00
Bram Moolenaar
8cec9273d2
patch 8.2.3039: Vim9: breakpoint at a comment line does not work
...
Problem: Vim9: breakpoint at a comment line does not work.
Solution: Add the comment line number to the debug instruction.
(closes #8429 )
2021-06-23 20:20:53 +02:00
Bram Moolenaar
035bd1c99f
patch 8.2.3029: Vim9: crash when using operator and list unpack assignment
...
Problem: Vim9: crash when using operator and list unpack assignment.
(Naohiro Ono)
Solution: Get variable value before operation. (closes #8416 )
2021-06-21 19:44:11 +02:00
Bram Moolenaar
74f4a965bc
patch 8.2.3015: Vim9: Assigning to @# requires a string
...
Problem: Vim9: Assigning to @# requires a string. (Naohiro Ono)
Solution: Accent a number or a string. (closes #8396 )
2021-06-17 21:03:07 +02:00
Bram Moolenaar
6bc30b05e6
patch 8.2.3011: Vim9: cannot get argument values during debugging
...
Problem: Vim9: cannot get argument values during debugging.
Solution: Lookup names in the list of arguments. Put debug instruction
halfway for command.
2021-06-16 19:19:55 +02:00
Bram Moolenaar
f57b43c230
patch 8.2.3005: Vim9: using a void value does not give a proper error message
...
Problem: Vim9: using a void value does not give a proper error message.
Solution: Give a clear error message. (clodes #8387 )
2021-06-15 22:13:27 +02:00
Bram Moolenaar
caf1a2f296
patch 8.2.3001: Vim9: memory leak when compilation fails
...
Problem: Vim9: memory leak when compilation fails.
Solution: Free the list of variable names.
2021-06-15 11:27:21 +02:00
Bram Moolenaar
3b814af7e1
patch 8.2.3000: Vim9: warning for uninitialized variable
...
Problem: Vim9: warning for uninitialized variable.
Solution: Add initialization. (John Marriott)
2021-06-15 10:22:17 +02:00
Bram Moolenaar
b69c6fb7b4
patch 8.2.2996: Vim9: when debugging cannot inspect local variables
...
Problem: Vim9: when debugging cannot inspect local variables.
Solution: Make local variables available when debugging.
2021-06-14 20:40:37 +02:00
Yegappan Lakshmanan
2d6d718dde
patch 8.2.2994: various code is not fully tested
...
Problem: Various code is not fully tested.
Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8378 )
2021-06-13 21:52:48 +02:00
Bram Moolenaar
c2dec4cac4
patch 8.2.2989: Vim9: memory leak when debugging a :def function
...
Problem: Vim9: memory leak when debugging a :def function.
Solution: Free the debug instructions.
2021-06-13 15:39:00 +02:00
Bram Moolenaar
d9f31c13d2
patch 8.2.2986: build failure without the profile feature
...
Problem: Build failure without the profile feature.
Solution: Add #ifdef.
2021-06-13 14:15: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
e6174fd58d
patch 8.2.2984: Vim9: test fails because of missing return statement
...
Problem: Vim9: Test fails because of missing return statement.
Solution: When type is unknown set type to void.
2021-06-12 18:30:56 +02:00
Bram Moolenaar
a993153538
patch 8.2.2983: Vim9: an inline function requires specifying the return type
...
Problem: Vim9: an inline function requires specifying the return type.
Solution: Make the return type optional.
2021-06-12 15:58:16 +02:00
Bram Moolenaar
f0a4069e3d
patch 8.2.2975: Vim9: can only use an autoload function name as a string
...
Problem: Vim9: can only use an autoload function name as a string.
Solution: Load the autoload script when encountered. (closes #8124 )
2021-06-11 22:05:47 +02:00
Bram Moolenaar
b55d618f19
patch 8.2.2965: Vim9: crash when calling function that failed to compile
...
Problem: Vim9: crash when calling function that failed to compile.
Solution: Fail when trying to call the function. (closes #8344 )
2021-06-08 22:01:53 +02:00
Bram Moolenaar
a733042b12
patch 8.2.2964: Vim9: hang when using space after ->
...
Problem: Vim9: hang when using space after ->. (Naohiro Ono)
Solution: Skip over white space to find the function name. (closes #8341 )
2021-06-08 20:46:45 +02:00
Bram Moolenaar
e729ce294f
patch 8.2.2955: Vim9: using filter in compiled command does not work
...
Problem: Vim9: using filter in compiled command does not work.
Solution: Generate EXEC including the command modifier.
2021-06-06 21:38:09 +02:00
Bram Moolenaar
2067733b5c
patch 8.2.2951: Vim9: cannot use heredoc for :python, :lua, etc.
...
Problem: Vim9: cannot use heredoc in :def function for :python, :lua, etc.
Solution: Concatenate the heredoc lines and pass them in the ISN_EXEC_SPLIT
instruction.
2021-06-06 17:02:53 +02:00
Bram Moolenaar
5fa9b24440
patch 8.2.2936: Vim9: converting number to bool uses wrong stack offset
...
Problem: Vim9: converting number to bool uses wrong stack offset. (Salman
Halim)
Solution: Include the offset in the 2BOOL command.
2021-06-04 21:00:32 +02:00
Bram Moolenaar
c3cb1c92a3
patch 8.2.2926: Vim9: no good error for using :legacy in a :def function
...
Problem: Vim9: no good error for using :legacy in a :def function.
Solution: Give an explicit error where :legacy is not working.
(closes #8309 )
2021-06-02 16:47:53 +02:00