Bram Moolenaar
2ef9156b42
patch 8.2.3783: confusing error for using a variable as a function
...
Problem: Confusing error for using a variable as a function.
Solution: If a function is not found but there is a variable, give a more
useful error. (issue #9310 )
2021-12-11 16:14:07 +00:00
Bram Moolenaar
dcb53be441
patch 8.2.3765: Vim9: cannot use a lambda for 'opfunc' and others
...
Problem: Vim9: cannot use a lambda for 'opfunc' and others.
Solution: Convert the lambda to a string.
2021-12-09 14:23:43 +00:00
Bram Moolenaar
2336c376d5
patch 8.2.3753: Vim9: function unreferenced while called is never deleted
...
Problem: Vim9: function unreferenced while called is never deleted.
Solution: Delete a function when no longer referenced.
2021-12-06 15:06:54 +00:00
Bram Moolenaar
c7d5fc8622
patch 8.2.3746: cannot disassemble function starting with "debug" or "profile"
...
Problem: Cannot disassemble function starting with "debug" or "profile".
Solution: Check for white space following. (closes #9273 )
2021-12-05 17:20:24 +00:00
Bram Moolenaar
01a4dcbcee
patch 8.2.3734: Vim9: crash when no pattern match found
...
Problem: Vim9: crash when no pattern match found.
Solution: Check for error.
2021-12-04 13:15:10 +00:00
Bram Moolenaar
69c76171f1
patch 8.2.3720: Vim9: Internal error when invoking closure in legacy context
...
Problem: Vim9: Internal error when invoking closure in legacy context.
Solution: Give a more appropriate error message. (closes #9251 )
2021-12-02 16:38:52 +00:00
Bram Moolenaar
e4eed8c6db
patch 8.2.3716: Vim9: range without a command is not compiled
...
Problem: Vim9: range without a command is not compiled.
Solution: Add the ISN_EXECRANGE byte code.
2021-12-01 15:22:56 +00:00
Bram Moolenaar
293eb9ba46
patch 8.2.3693: Coverity warns for possibly using a NULL pointer
...
Problem: Coverity warns for possibly using a NULL pointer.
Solution: Check for NULL and give an error.
2021-11-29 10:36:19 +00:00
Bram Moolenaar
38453528c3
patch 8.2.3692: Vim9: cannot use :func inside a :def function
...
Problem: Vim9: cannot use :func inside a :def function.
Solution: Make it work.
2021-11-28 22:00:12 +00:00
Bram Moolenaar
112bed0cbe
patch 8.2.3657: Vim9: debug text misses one line of return statement
...
Problem: Vim9: debug text misses one line of return statement.
Solution: Add a line when not at a debug instruction. (closes #9137 )
2021-11-23 22:16:34 +00:00
Bram Moolenaar
21c1a0c2f1
patch 8.2.3530: ":buf \{a}" fails while ":edit \{a}" works
...
Problem: ":buf \{a}" fails while ":edit \{a}" works.
Solution: Unescape "\{". (closes #8917 )
2021-10-17 17:20:23 +01:00
Bram Moolenaar
1a7ee4dd11
patch 8.2.3442: Vim9: || and && are not handled at compile time
...
Problem: Vim9: || and && are not handled at compile time when possible.
Solution: When using constants generate fewer instructions.
2021-09-16 16:15:07 +02:00
Bram Moolenaar
b1b6f4de2b
patch 8.2.3435: Vim9: dict is not passed to dict function
...
Problem: Vim9: dict is not passed to dict function.
Solution: Keep the dict used until a function call.
2021-09-13 18:25:54 +02:00
Bram Moolenaar
07802044b9
patch 8.2.3423: Vim9: list += list creates a new list in :def function
...
Problem: Vim9: list += list creates a new list in :def function.
Solution: Append to the existing list.
2021-09-09 23:01:14 +02:00
Bram Moolenaar
26a4484da2
patch 8.2.3395: Vim9: expression breakpoint not checked in :def function
...
Problem: Vim9: expression breakpoint not checked in :def function.
Solution: Always compile a function for debugging if there is an expression
breakpoint. (closes #8803 )
2021-09-02 18:49:06 +02:00
Bram Moolenaar
88c89c7722
patch 8.2.3341: Vim9: function call aborted despite try/catch
...
Problem: Vim9: function call aborted despite try/catch. (Naohiro Ono)
Solution: Ignore error caught by try/catch. (closes #8755 )
2021-08-14 14:01:05 +02:00
Bram Moolenaar
aacc966c5d
patch 8.2.3339: Vim9: cannot lock a member in a local dict
...
Problem: Vim9: cannot lock a member in a local dict.
Solution: Get the local dict from the stack and pass it to get_lval().
2021-08-13 19:40:51 +02:00
Bram Moolenaar
4f0884d6e2
patch 8.2.3332: Vim9: cannot assign to range in list
...
Problem: Vim9: cannot assign to range in list.
Solution: Implement overwriting a list range.
2021-08-11 21:49:23 +02:00
Bram Moolenaar
fbeefb1b87
patch 8.2.3309: Vim9: divide by zero causes a crash
...
Problem: Vim9: divide by zero causes a crash.
Solution: Give an error message. (closes #8727 )
2021-08-07 15:50:23 +02:00
Bram Moolenaar
6ce46b9963
patch 8.2.3308: Vim9: no runtime check for argument type with varargs only
...
Problem: Vim9: no runtime check for argument type if a function only has
varargs.
Solution: Also check argument types if uf_va_type is set. (closes #8715 )
2021-08-07 15:35:36 +02:00
Bram Moolenaar
7de6262373
patch 8.2.3307: Vim9: :echoconsole cannot access local variables
...
Problem: Vim9: :echoconsole cannot access local variables.
Solution: Handle like other :echo commands. (closes #8708 )
2021-08-07 15:05:47 +02:00
Dominique Pelle
3276f5846f
patch 8.2.3303: some structures could be smaller
...
Problem: Some structures could be smaller.
Solution: Rearrange members to reduce size. (Dominique Pellé, closes #8725 )
2021-08-07 12:44:41 +02:00
Bram Moolenaar
35578168be
patch 8.2.3275: optimizer can use hints about ga_grow() normally succeeding
...
Problem: Optimizer can use hints about ga_grow() normally succeeding.
Solution: Use GA_GROW_FAILS() and GA_GROW_OK() in several places. (Dominique
Pellé, issue #8635 )
2021-08-02 19:10:38 +02:00
Bram Moolenaar
952d9d827e
patch 8.2.3274: macro for printf format check can be simplified
...
Problem: Macro for printf format check can be simplified.
Solution: Add ATTRIBUTE_FORMAT_PRINTF(). (Dominique Pellé, issue #8635 )
2021-08-02 18:07:18 +02:00
Bram Moolenaar
6db660bed9
patch 8.2.3267: Vim9: crash when disassembling using deleted script variable
...
Problem: Vim9: crash when disassembling a function that uses a deleted
script variable.
Solution: Check the variable still exists. (closes #8683 )
2021-08-01 14:08:54 +02:00
Bram Moolenaar
60dc8274e9
patch 8.2.3249: Vim9: error for re-imported function with default argument
...
Problem: Vim9: error for re-imported function with default argument.
Solution: Do not check argument type if it is still unknown. (closes #8653 )
2021-07-29 22:48:54 +02:00
Dominique Pelle
5a9e5845e1
patch 8.2.3212: Vim9: execution speed can be improved
...
Problem: Vim9: execution speed can be improved.
Solution: Use __builtin_expect() to have the compiler produce better code.
(Dominique Pellé, closes #8613 )
2021-07-24 19:32:12 +02:00
Bram Moolenaar
5dd839ce20
patch 8.2.3202: Vim9: tests are only executed for legacy script
...
Problem: Vim9: tests are only executed for legacy script.
Solution: Run more tests also for Vim9 script. Fix uncovered problems.
2021-07-22 18:48:53 +02:00
Bram Moolenaar
7a3fe3e180
patch 8.2.3200: Vim9: hard to guess where a type error is given
...
Problem: Vim9: hard to guess where a type error is given.
Solution: Add the function name where possible. (closes #8608 )
2021-07-22 14:58:47 +02:00
Bram Moolenaar
a74901929e
patch 8.2.3199: Vim9: execution speed can be improved
...
Problem: Vim9: execution speed can be improved.
Solution: Make the break counter static.
2021-07-22 12:26:14 +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
e29a27f6f8
patch 8.2.3190: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move error messages to errors.h and give them a clear name.
2021-07-20 21:07:36 +02:00
Bram Moolenaar
b5841b99e6
patch 8.2.3166: Vim9: nested autoload call error overruled by "Unknown error"
...
Problem: Vim9: nested autoload call error overruled by "Unknown error".
Solution: Check need_rethrow before giving an "Unknown error".
(closes #8568 )
2021-07-15 18:09:53 +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
303215d60c
patch 8.2.3116: Vim9: crash when debugging a function with line continuation
...
Problem: Vim9: crash when debugging a function with line continuation.
Solution: Check for a NULL pointer. (closes #8521 )
2021-07-07 20:10:43 +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
d3d8feeb89
patch 8.2.3077: Vim9: an error in a catch block is not reported
...
Problem: Vim9: an error in a catch block is not reported.
Solution: Put the "in catch" flag in the try stack. (closes #8478 )
2021-06-30 19:54:43 +02:00
Bram Moolenaar
3f987b5917
patch 8.2.3076: Vim9: using try in catch block causes a hang
...
Problem: Vim9: using try in catch block causes a hang.
Solution: Save and restore the ec_in_catch flag. (closes #8478 )
2021-06-30 12:02:24 +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
2ac4b2536a
patch 8.2.3027: Vim9: breakpoint in compiled function not always checked
...
Problem: Vim9: breakpoint in compiled function not always checked.
Solution: Check for breakpoint when calling compiled function from compiled
function.
2021-06-20 20:09:42 +02:00
Bram Moolenaar
4f8f54280f
patch 8.2.3026: Vim9: cannot set breakpoint in compiled function
...
Problem: Vim9: cannot set breakpoint in compiled function.
Solution: Check for breakpoint when calling a function.
2021-06-20 19:28:14 +02:00
Bram Moolenaar
59b50c3bee
patch 8.2.3017: Vim9: debugger shows too many lines
...
Problem: Vim9: debugger shows too many lines.
Solution: Truncate at a comment, "enddef", etc. (closes #8392 )
2021-06-17 22:27:48 +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
Dominique Pelle
6e9695525e
patch 8.2.3014: Coverity warns for freeing static string
...
Problem: Coverity warns for freeing static string.
Solution: Do not assign static string to pointer. (Dominique Pellé,
closes #8397 )
2021-06-17 13:53:41 +02:00
Bram Moolenaar
4cea536bdf
patch 8.2.3013: Vim: when debugging only first line of command is displayed
...
Problem: Vim: when debugging only the first line of a command using line
continuation is displayed.
Solution: Find the next command and concatenate lines until that one.
(closes #8392 )
2021-06-16 22:24:40 +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
968a5b62ff
patch 8.2.3003: Vim9: closure compiled with wrong compile type
...
Problem: Vim9: closure compiled with wrong compile type.
Solution: Use COMPILE_TYPE() when calling a function. (closes #8384 )
2021-06-15 19:32:40 +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