Bram Moolenaar
912bfee710
patch 9.0.1204: expression compiled the wrong way after using an object
...
Problem: Expression compiled the wrong way after using an object.
Solution: Generate constants before getting the type.
2023-01-15 20:18:55 +00:00
Bram Moolenaar
6aa0937fb8
patch 9.0.1179: not all errors around inheritance are tested
...
Problem: Not all errors around inheritance are tested.
Solution: Add more tests. Fix uncovered problems.
2023-01-11 17:59:38 +00:00
Bram Moolenaar
58b40092e6
patch 9.0.1178: a child class cannot override functions from a base class
...
Problem: A child class cannot override functions from a base class.
Solution: Allow overriding and implement "super".
2023-01-11 15:59:05 +00:00
h-east
01c5f2addf
patch 9.0.1164: evaluating string expression advances function line
...
Problem: Evaluating string expression advances function line.
Solution: Disable function lines while parsing a string expression.
(Hirohito Higashi, closes #11796 )
2023-01-09 15:10:40 +00:00
Bram Moolenaar
3259ff3b3b
patch 9.0.1147: cannot access a class member in a compiled function
...
Problem: Cannot access a class member in a compiled function.
Solution: Implement looking up a class member.
2023-01-04 18:54:09 +00:00
Bram Moolenaar
574950dfb1
patch 9.0.1140: cannot call an object method in a compiled function
...
Problem: Cannot call an object method in a compiled function.
Solution: Compile the instructins to invoke an object method.
2023-01-03 19:08:50 +00:00
Bram Moolenaar
46ab925937
patch 9.0.1139: cannot create a new object in a compiled function
...
Problem: Cannot create a new object in a compiled function.
Solution: Compile the instructins to create a new object.
2023-01-03 14:01:21 +00:00
Bram Moolenaar
bcf31ec36b
patch 9.0.1134: comparing objects uses identity instead of equality
...
Problem: Comparing objects uses identity instead of equality.
Solution: Compare the object values.
2023-01-02 20:32:24 +00:00
Bram Moolenaar
a9fa8c58fb
patch 9.0.1133: error message names do not match the items
...
Problem: Error message names do not match the items.
Solution: Add "_str" when the text contains "%s".
2023-01-02 18:10:04 +00:00
Bram Moolenaar
6acf757c6a
patch 9.0.1127: no error if function argument shadows class member
...
Problem: No error if function argument shadows class member.
Solution: Give an error for shadowing a class member.
2023-01-01 19:53:30 +00:00
Bram Moolenaar
6bafdd41cb
patch 9.0.1123: class function not implemented yet
...
Problem: Class function not implemented yet.
Solution: Implement defining and calling a class function.
2023-01-01 12:58:33 +00: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
73ade49c4b
patch 9.0.1107: float constant not recognized as float
...
Problem: Float constant not recognized as float.
Solution: Check the vartype instead of comparing with t_float.
(closes #11754 )
2022-12-27 20:54:41 +00:00
Bram Moolenaar
d505d17885
patch 9.0.1074: class members are not supported yet
...
Problem: Class members are not supported yet.
Solution: Add initial support for class members.
2022-12-18 21:42:55 +00:00
Bram Moolenaar
3d473ee1a6
patch 9.0.1060: private and public object members are not implemented yet
...
problem: Private and public object members are not implemented yet.
Solution: Implement private and public object members.
2022-12-14 20:59:32 +00:00
Bram Moolenaar
7ce7daf6cd
patch 9.0.1045: in a class object members cannot be initialized
...
Problem: In a class object members cannot be initialized.
Solution: Support initializing object members. Make "dissassemble" work on
an object method.
2022-12-10 18:42:12 +00:00
Bram Moolenaar
ffdaca9e6f
patch 9.0.1041: cannot define a method in a class
...
Problem: Cannot define a method in a class.
Solution: Implement defining an object method. Make calling an object
method work.
2022-12-09 21:41:48 +00:00
Bram Moolenaar
00b28d6c23
patch 9.0.1031: Vim9 class is not implemented yet
...
Problem: Vim9 class is not implemented yet.
Solution: Add very basic class support.
2022-12-08 15:32:33 +00:00
Bram Moolenaar
adbc08fd69
patch 9.0.0840: cannot change a slice of a const list
...
Problem: Cannot change a slice of a const list. (Takumi KAGIYAMA)
Solution: Remove the const flag from the slice type. (closes #11490 )
2022-11-06 18:27:17 +00:00
dundargoc
c57b5bcd22
patch 9.0.0828: various typos
...
Problem: Various typos.
Solution: Correct typos. (closes #11432 )
2022-11-02 13:30:51 +00:00
Bram Moolenaar
d0fbb41eaa
patch 9.0.0799: in compiled function ->() on next line not recognized
...
Problem: In compiled function ->() on next line not recognized.
Solution: Also check for "(". (closes #11405 )
2022-10-19 18:04:49 +01:00
Bram Moolenaar
4913d420e8
patch 9.0.0778: indexing of unknown const type fails during compilation
...
Problem: Indexing of unknown const type fails during compilation.
Solution: Check for "any" properly. (closes #11389 )
2022-10-17 13:13:32 +01:00
Bram Moolenaar
f8addf1ca1
patch 9.0.0554: using freed memory when command follows lambda
...
Problem: Using freed memory when command follows lambda.
Solution: Don't free what is still in use. (closes #11201 )
2022-09-23 12:44:25 +01:00
Bram Moolenaar
c9e4a6f191
patch 9.0.0504: still a build failure
...
Problem: still a Build failure.
Solution: Add another missing changes. Avoid compiler warning.
2022-09-19 16:08:04 +01:00
Bram Moolenaar
73e28dcc61
patch 9.0.0491: no good reason to build without the float feature
...
Problem: No good reason to build without the float feature.
Solution: Remove configure check for float and "#ifdef FEAT_FLOAT".
2022-09-17 21:08:33 +01:00
Bram Moolenaar
8fa745e7be
patch 9.0.0481: in :def function all closures in loop get the same variables
...
Problem: In a :def function all closures in a loop get the same variables.
Solution: Use a separate list of variables for LOADOUTER and STOREOUTER.
Not copied at end of loop yet.
2022-09-16 19:04:24 +01:00
Bram Moolenaar
f5fec05c7f
patch 9.0.0440: crash when using mkdir() with "R" flag in compiled function
...
Problem: Crash when using mkdir() with "R" flag in compiled function.
Solution: Reserve a variable for deferred function calls. Handle more than
one argument.
2022-09-11 11:49:22 +01:00
Bram Moolenaar
806a273f3c
patch 9.0.0379: cleaning up after writefile() is a hassle
...
Problem: Cleaning up after writefile() is a hassle.
Solution: Add the 'D' flag to defer deleting the written file. Very useful
in tests.
2022-09-04 15:40:36 +01:00
Bram Moolenaar
1d84f7608f
patch 9.0.0370: cleaning up afterwards can make a function messy
...
Problem: Cleaning up afterwards can make a function messy.
Solution: Add the :defer command.
2022-09-03 21:35:53 +01:00
Bram Moolenaar
2984ed31d9
patch 9.0.0230: no error for comma missing in list in :def function
...
Problem: No error for comma missing in list in :def function.
Solution: Check for missing comma. (closes #10943 )
2022-08-20 14:51:17 +01:00
Kota Kato
948a3894d9
patch 9.0.0219: cannot make a funcref with "s:func" in a def function
...
Problem: Cannot make a funcref with "s:func" in a def function in legacy
script.
Solution: Allow for using a lower case function name after "s:". (Kota Kato,
closes #10926 )
2022-08-16 16:09:59 +01:00
Bram Moolenaar
c3caa7f788
patch 8.2.5018: Vim9: some code is not covered by tests
...
Problem: Vim9: some code is not covered by tests.
Solution: Delete dead code.
2022-05-25 19:15:10 +01:00
Bram Moolenaar
68e64d2c17
patch 8.2.5006: asan warns for undefined behavior
...
Problem: Asan warns for undefined behavior.
Solution: Cast the shifted value to unsigned.
2022-05-22 22:07:52 +01:00
Bram Moolenaar
5b529230f1
patch 8.2.5005: compiler warning for uninitialized variable
...
Problem: Compiler warning for uninitialized variable. (John Marriott)
Solution: Initialize the pointer to NULL.
2022-05-22 21:53:26 +01:00
Bram Moolenaar
338bf58eba
patch 8.2.5004: right shift on negative number does not work as documented
...
Problem: Right shift on negative number does not work as documented.
Solution: Use a uvarnumber_T type cast.
2022-05-22 20:16:32 +01:00
Yegappan Lakshmanan
a061f34191
patch 8.2.5003: cannot do bitwise shifts
...
Problem: Cannot do bitwise shifts.
Solution: Add the >> and << operators. (Yegappan Lakshmanan, closes #8457 )
2022-05-22 19:13:49 +01:00
Bram Moolenaar
1ff9c44267
patch 8.2.4972: Vim9: compilation fails when using dict member when skipping
...
Problem: Vim9: compilation fails when using dict member when skipping.
Solution: Do not generate ISN_USEDICT when skipping. (closes #10433 )
2022-05-17 15:03:33 +01:00
Bram Moolenaar
31ad32a325
patch 8.2.4949: Vim9: some code not covered by tests
...
Problem: Vim9: some code not covered by tests.
Solution: Add a few more test cases. Fix double error message.
2022-05-13 16:23:37 +01:00
Bram Moolenaar
7f8a3b11bf
patch 8.2.4946: Vim9: some code not covered by tests
...
Problem: Vim9: some code not covered by tests.
Solution: Add a few more test cases. Remove dead code.
2022-05-12 22:03:01 +01:00
Bram Moolenaar
d0132f4862
patch 8.2.4940: some code is never used
...
Problem: Some code is never used.
Solution: Remove dead code. Add a few more test cases.
2022-05-12 11:05:40 +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
LemonBoy
f3b4895f27
patch 8.2.4870: Vim9: expression in :substitute is not compiled
...
Problem: Vim9: expression in :substitute is not compiled.
Solution: Use an INSTR instruction if possible. (closes #10334 )
2022-05-05 13:53:03 +01:00
LemonBoy
372bcceeee
patch 8.2.4823: concat more than 2 strings in :def function is inefficient
...
Problem: Concatenating more than 2 strings in a :def function is
inefficient.
Solution: Add a count to the CONCAT instruction. (closes #10276 )
2022-04-25 12:43:20 +01:00
LemonBoy
58f331a05f
patch 8.2.4669: in compiled code len('string') is not inlined
...
Problem: In compiled code len('string') is not inlined.
Solution: Compute the length at compile time if possible. (closes #10065 )
2022-04-02 21:59:06 +01:00
Bram Moolenaar
ffe6e646dc
patch 8.2.4661: Coverity warning for using uninitialized variable
...
Problem: Coverity warning for using uninitialized variable.
Solution: Initialize variable to NULL.
2022-04-01 13:23:47 +01:00
Bram Moolenaar
a6c18d38ca
patch 8.2.4657: errors for functions are sometimes hard to read
...
Problem: Errors for functions are sometimes hard to read.
Solution: Use printable_func_name() in more places.
2022-03-31 20:02:56 +01:00
Bram Moolenaar
ccbfd4883f
patch 8.2.4656: Vim9: can't use item from "import autoload" with autoload dir
...
Problem: Vim9: can't use items from "import autoload" with autoload
directory name.
Solution: Let sn_autoload_prefix overrule sn_import_autoload.
(closes #10054 )
2022-03-31 16:18:23 +01:00
Bram Moolenaar
c0ceeeb839
patch 8.2.4650: "import autoload" only works with using 'runtimepath'
...
Problem: "import autoload" only works with using 'runtimepath'.
Solution: Also support a relative and absolute file name.
2022-03-30 21:12:27 +01:00
Bram Moolenaar
ec15b1cfdc
patch 8.2.4634: Vim9: cannot initialize a variable to null_list
...
Problem: Vim9: cannot initialize a variable to null_list.
Solution: Give negative count to NEWLIST. (closes #10027 )
Also fix inconsistencies in comparing with null values.
2022-03-27 16:29:53 +01:00