Bram Moolenaar
85d5e2b723
patch 8.2.1819: Vim9: Memory leak when using a closure
...
Problem: Vim9: Memory leak when using a closure.
Solution: Compute the mininal refcount in the funcstack. Reenable disabled
tests.
2020-10-10 14:13:01 +02:00
Bram Moolenaar
10c65860f8
patch 8.2.1813: Vim9: can assign wrong type to script dict
...
Problem: Vim9: can assign wrong type to script dict. (Christian J. Robinson)
Solution: Check the type if known.
2020-10-08 21:16:42 +02:00
Bram Moolenaar
1310660557
patch 8.2.1798: Vim9: trinary operator condition is too permissive
...
Problem: Vim9: trinary operator condition is too permissive.
Solution: Use tv_get_bool_chk().
2020-10-04 16:06:05 +02:00
Bram Moolenaar
2bb2658bef
patch 8.2.1795: Vim9: operators && and || have a confusing result
...
Problem: Vim9: operators && and || have a confusing result.
Solution: Make the result a boolean.
2020-10-03 22:52:39 +02:00
Bram Moolenaar
92f26c256e
patch 8.2.1794: no falsy Coalescing operator
...
Problem: No falsy Coalescing operator.
Solution: Add the "??" operator. Fix mistake with function argument count.
2020-10-03 20:17:30 +02:00
Bram Moolenaar
30fd8204ce
patch 8.2.1744: Vim9: using ":const!" is weird
...
Problem: Vim9: using ":const!" is weird.
Solution: Use "var" - "final" - "const" like Dart. "let" still works for
now.
2020-09-26 15:09:30 +02:00
Bram Moolenaar
81ed496048
patch 8.2.1731: Vim9: cannot use += to append to empty NULL list
...
Problem: Vim9: cannot use += to append to empty NULL list.
Solution: Copy the list instead of extending it. (closes #6998 )
2020-09-23 15:56:50 +02:00
Bram Moolenaar
a187c43cfe
patch 8.2.1698: cannot lock a variable in legacy Vim script like in Vim9
...
Problem: Cannot lock a variable in legacy Vim script like in Vim9.
Solution: Make ":lockvar 0" work.
2020-09-16 21:08:28 +02:00
Bram Moolenaar
0b4c66c67a
patch 8.2.1685: Vim9: cannot declare a constant value
...
Problem: Vim9: cannot declare a constant value.
Solution: Introduce ":const!".
2020-09-14 21:39:44 +02:00
Bram Moolenaar
4a091b9978
patch 8.2.1672: v_lock is used when it is not initialized
...
Problem: v_lock is used when it is not initialized. (Yegappan Lakshmanan)
Solution: Initialize the typval in eval1().
2020-09-12 22:10:00 +02:00
Bram Moolenaar
c6e57b74fa
patch 8.2.1671: Vim9: stray error for missing white space
...
Problem: Vim9: stray error for missing white space.
Solution: Do not skip over white space after member. (closes #6817 )
2020-09-12 21:27:03 +02:00
Bram Moolenaar
c1ec0422e4
patch 8.2.1650: Vim9: result of && and || expression is not bool in script
...
Problem: Vim9: result of && and || expression cannot be assigned to a bool
at the script level.
Solution: Add the VAR_BOOL_OK flag. Convert to bool when needed.
2020-09-09 22:27:58 +02:00
Bram Moolenaar
9c2b06637b
patch 8.2.1560: using NULL pointers in some code
...
Problem: Using NULL pointers in some code. (James McCoy)
Solution: Avoid adding to a NULL pointer. Use byte as unsigned.
2020-09-01 19:56:15 +02:00
Bram Moolenaar
8b565c2c15
patch 8.2.1551: Vim9: error for argument type does not mention the number
...
Problem: Vim9: error for argument type does not mention the number.
Solution: Pass the argument number to where the error is given.
2020-08-30 23:24:20 +02:00
Bram Moolenaar
2566054a7f
patch 8.2.1532: compiler warning for conversion of size_t to long
...
Problem: Compiler warning for conversion of size_t to long.
Solution: Add type cast.
2020-08-28 16:38:11 +02:00
Bram Moolenaar
2e0866128b
patch 8.2.1524: no longer get an error for string concatenation with float
...
Problem: No longer get an error for string concatenation with float.
(Tsuyoshi Cho)
Solution: Only convert float for Vim9 script. (closes #6787 )
2020-08-25 22:37:48 +02:00
Bram Moolenaar
69e44552c5
patch 8.2.1512: failure after trinary expression fails
...
Problem: Failure after trinary expression fails.
Solution: Restore eval_flags. (Yasuhiro Matsumoto, closes #6776 )
2020-08-22 22:37:20 +02:00
Bram Moolenaar
51b6eb47b3
patch 8.2.1507: using malloc() directly
...
Problem: Using malloc() directly.
Solution: Use ALLOC_ONE(). Remove superfluous typecast. (Hussam al-Homsi,
closes #6768 )
2020-08-22 15:19:18 +02:00
Bram Moolenaar
ec65d77fa2
patch 8.2.1499: Vim9: error when using "$" with col()
...
Problem: Vim9: error when using "$" with col().
Solution: Reorder getting the column value. (closes #6744 )
2020-08-20 22:29:12 +02:00
Bram Moolenaar
825b54415f
patch 8.2.1494: missing change to calling eval_getline()
...
Problem: Missing change to calling eval_getline().
Solution: Change last argument.
2020-08-20 15:52:21 +02:00
Bram Moolenaar
aeb2bdd0de
patch 8.2.1482: Vim9: crash when using a nested lambda
...
Problem: Vim9: crash when using a nested lambda.
Solution: Do not clear the growarray when not evaluating. Correct pointer
when getting the next line. (closes #6731 )
2020-08-18 22:32:03 +02:00
Bram Moolenaar
e15eebd202
patch 8.2.1480: Vim9: skip expression in search() gives error
...
Problem: Vim9: skip expression in search() gives error.
Solution: use tv_get_bool() eval_expr_to_bool(). (closes #6729 )
2020-08-18 19:11:38 +02:00
Bram Moolenaar
021bda5671
patch 8.2.1473: items in a list given to :const can still be modified
...
Problem: Items in a list given to :const can still be modified.
Solution: Work like ":lockvar! name" but don't lock referenced items.
Make locking a blob work.
2020-08-17 21:07:22 +02:00
Bram Moolenaar
f923571ec1
patch 8.2.1468: Vim9: invalid error for missing white space
...
Problem: Vim9: invalid error for missing white space.
Solution: Don't skip over white space after index. (closes #6718 )
2020-08-16 18:42:53 +02:00
Bram Moolenaar
cc673e746a
patch 8.2.1466: Vim9: cannot index or slice a variable with type "any"
...
Problem: Vim9: cannot index or slice a variable with type "any".
Solution: Add runtime index and slice.
2020-08-16 17:33:35 +02:00
Bram Moolenaar
56acb0943e
patch 8.2.1465: Vim9: subscript not handled properly
...
Problem: Vim9: subscript not handled properly.
Solution: Adjust error message. Remove dead code. Disallow string to
number conversion in scripts.
2020-08-16 14:48:19 +02:00
Bram Moolenaar
ed5918771f
patch 8.2.1463: Vim9: list slice not supported yet
...
Problem: Vim9: list slice not supported yet.
Solution: Add support for list slicing.
2020-08-15 22:14:53 +02:00
Bram Moolenaar
11107bab7e
patch 8.2.1462: Vim9: string slice not supported yet
...
Problem: Vim9: string slice not supported yet.
Solution: Add support for string slicing.
2020-08-15 21:10:16 +02:00
Bram Moolenaar
e3c37d8ebf
patch 8.2.1461: Vim9: string indexes are counted in bytes
...
Problem: Vim9: string indexes are counted in bytes.
Solution: Use character indexes. (closes #6574 )
2020-08-15 18:39:05 +02:00
Bram Moolenaar
451c2e3536
patch 8.2.1460: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move more messages into errors.h.
2020-08-15 16:33:28 +02:00
Bram Moolenaar
c9edd6b582
patch 8.2.1437: Vim9: 'statusline' is evaluated using Vim9 script syntax
...
Problem: Vim9: 'statusline' is evaluated using Vim9 script syntax.
Solution: Always use legacy script syntax.
2020-08-12 22:18:23 +02:00
Bram Moolenaar
418f1df547
patch 8.2.1435: Vim9: always converting to string for ".." leads to mistakes
...
Problem: Vim9: always converting to string for ".." leads to mistakes.
Solution: Only automatically convert simple types.
2020-08-12 21:34:49 +02:00
Bram Moolenaar
3e06a1e2a8
patch 8.2.1416: Vim9: boolean evaluation does not work as intended
...
Problem: Vim9: boolean evaluation does not work as intended.
Solution: Use tv2bool() in Vim9 script. (closes #6681 )
2020-08-10 21:57:54 +02:00
Bram Moolenaar
6e4cfffe80
patch 8.2.1412: Vim: not operator does not result in boolean
...
Problem: Vim: not operator does not result in boolean.
Solution: Make type depend on operator. (issue 6678) Fix using "false" and
"true" in Vim9 script.
2020-08-09 22:17:55 +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
95dd9f2571
patch 8.2.1387: Vim9: cannot assign to single letter variable with type
...
Problem: Vim9: cannot assign to single letter variable with type.
Solution: Exclude the colon from the variable name. (closes #6647 )
2020-08-07 19:28:08 +02:00
Bram Moolenaar
bbd3e3c357
patch 8.2.1378: cannot put space between function name and paren
...
Problem: Cannot put space between function name and paren.
Solution: Allow this for backwards compatibility.
2020-08-06 11:23:36 +02:00
Bram Moolenaar
fdac71c507
patch 8.2.1372: Vim9: no error for missing white space around operator
...
Problem: Vim9: no error for missing white space around operator.
Solution: Check for white space around ? and :.
2020-08-05 12:44:41 +02:00
Bram Moolenaar
3c1c9fd94b
patch 8.2.1371: Vim9: no error for missing white space around operator
...
Problem: Vim9: no error for missing white space around operator.
Solution: Check for white space around && and ||.
2020-08-05 12:32:38 +02:00
Bram Moolenaar
ff1cd39cfe
patch 8.2.1368: Vim9: no error for missing white space around operator
...
Problem: Vim9: no error for missing white space around operator.
Solution: Check for white space around <, !=, etc.
2020-08-05 11:51:30 +02:00
Bram Moolenaar
b4caa163ff
patch 8.2.1367: Vim9: no error for missing white space around operator
...
Problem: Vim9: no error for missing white space around operator.
Solution: Check for white space around *, / and %.
2020-08-05 11:36:52 +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
6a25026262
patch 8.2.1361: error for white space after expression in assignment
...
Problem: Error for white space after expression in assignment.
Solution: Skip over white space. (closes #6617 )
2020-08-04 15:53:01 +02:00
Bram Moolenaar
f96e9dec63
patch 8.2.1360: stray error for white space after expression
...
Problem: Stray error for white space after expression.
Solution: Ignore trailing white space. (closes #6608 )
2020-08-03 22:39:28 +02:00
Bram Moolenaar
9d48956681
patch 8.2.1326: Vim9: skipping over white space after list
...
Problem: Vim9: skipping over white space after list.
Solution: Do not skip white space, a following [] would be misinterpreted.
(closes #6552 ) Fix a few side effects.
2020-07-30 20:08:50 +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
b13ab99908
patch 8.2.1306: checking for first character of dict key is inconsistent
...
Problem: Checking for first character of dict key is inconsistent.
Solution: Add eval_isdictc(). (closes #6546 )
2020-07-27 21:43:28 +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
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