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
b775e72439
patch 9.0.0920: cannot find an import prefixed with "s:"
...
Problem: Cannot find an import prefixed with "s:". (Doug Kearns)
Solution: Skip over the "s:". (closes #11585 )
2022-11-22 18:12:44 +00:00
Bram Moolenaar
2435adf8eb
patch 9.0.0811: error if :echowin is preceded by a command modifier
...
Problem: Error if :echowin is preceded by a command modifier.
Solution: Do not give an error for range when there is a modifier.
(closes #11414 )
2022-10-21 12:05:46 +01:00
Bram Moolenaar
3558afe9e9
patch 9.0.0742: reading past end of the line when compiling a function
...
Problem: Reading past end of the line when compiling a function with
errors.
Solution: Do not return an invalid pointer. Fix skipping redirection.
2022-10-13 16:12:57 +01:00
Bram Moolenaar
a275f2cdcc
patch 9.0.0724: closure in compiled function gets same variable in block
...
Problem: Closure in compiled function gets same variable in block.
Solution: At the end of a block to not always reset the variable count.
(issue #11094 )
2022-10-11 20:04:09 +01:00
Bram Moolenaar
fcb86b0a99
patch 9.0.0689: compiler warning for unused function
...
Problem: Compiler warning for unused function.
Solution: Add #ifdef. (John Marriott)
2022-10-07 22:46:24 +01:00
Bram Moolenaar
2eae3d24d7
patch 9.0.0684: skipped :exe command fails compilation on MS-Windows
...
Problem: Skipped :exe command fails compilation on MS-Windows.
Solution: Adjust return value when skipping.
2022-10-07 15:09:27 +01:00
Bram Moolenaar
bdc09a18fc
patch 9.0.0683: cannot specify a time for :echowindow
...
Problem: Cannot specify a time for :echowindow.
Solution: A count can be used to specify the display time. Add
popup_findecho().
2022-10-07 14:31:45 +01:00
Bram Moolenaar
6586a01514
patch 9.0.0627: "const" and "final" both make the type a constant
...
Problem: "const" and "final" both make the type a constant. (Daniel
Steinberg)
Solution: Only have "const" make the type a constant.
2022-09-30 11:04:50 +01:00
Bram Moolenaar
fa1039760e
patch 9.0.0623: error for modifying a const is not detected at compile time
...
Problem: Error for modifying a const is not detected at compile time.
Solution: Add TTFLAG_CONST and check for it in add() and extend().
2022-09-29 19:14:42 +01:00
Bram Moolenaar
65449bd1ee
patch 9.0.0503: build failure
...
Problem: Build failure.
Solution: Add missing changes.
2022-09-19 16:02:43 +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
b46c083a5e
patch 9.0.0470: 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: When in a loop and a closure refers to a variable declared in the
loop, prepare for making a copy of variables for each closure.
2022-09-15 17:19:37 +01: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
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
Yegappan Lakshmanan
c99e182e1f
patch 9.0.0364: clang static analyzer gives warnings
...
Problem: Clang static analyzer gives warnings.
Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #11043 )
2022-09-03 10:52:24 +01:00
Bram Moolenaar
7d7ad7b2e8
patch 9.0.0350: :echowindow does not work in a compiled function
...
Problem: :echowindow does not work in a compiled function.
Solution: Handle the expression at compile time.
2022-09-01 16:00:53 +01:00
Bram Moolenaar
753885b6c5
patch 9.0.0253: a symlink to an autoload script results in two entries
...
Problem: A symlink to an autoload script results in two entries in the list
of scripts, items expected in one are actually in the other.
Solution: Have one script item refer to the actually sourced one.
(closes #10960 )
2022-08-24 16:30:36 +01:00
Bram Moolenaar
4875d6ab06
patch 9.0.0224: Using NULL pointer when skipping compiled code
...
Problem: Using NULL pointer when skipping compiled code.
Solution: Check for skipping.
2022-08-17 15:55:51 +01:00
Bram Moolenaar
1889f499a4
patch 9.0.0221: accessing freed memory if compiling nested function fails
...
Problem: Accessing freed memory if compiling nested function fails.
Solution: Mess up the variable name so that it won't be found.
2022-08-16 19:34:44 +01:00
Bram Moolenaar
ad6d9cc679
patch 9.0.0174: no error for using "#{ comment" in a compiled function
...
Problem: No error for using "#{ comment" in a compiled function.
Solution: Make error checking for "#{" consistent. (closes #10855 )
2022-08-08 21:43:11 +01:00
Bram Moolenaar
6809ff978a
patch 9.0.0079: error in autoload script not reported for 'foldexpr'
...
Problem: Error in autoload script not reported for 'foldexpr'.
Solution: Reset "emsg_off" when auto-loading a script. (closes #10685 )
2022-07-26 15:10:56 +01:00
Bram Moolenaar
31d9948e3a
patch 8.2.5026: Vim9: a few lines not covered by tests
...
Problem: Vim9: a few lines not covered by tests.
Solution: Delete dead code. Add a few test cases. make "12->func()" work.
2022-05-26 22:24:43 +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
bd3a9d2c94
patch 8.2.4973: Vim9: type error for list unpack mentions argument
...
Problem: Vim9: type error for list unpack mentions argument.
Solution: Mention variable. (close #10435 )
2022-05-17 16:12:39 +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
Bram Moolenaar
6ed545e797
patch 8.2.4928: various white space and cosmetic mistakes
...
Problem: Various white space and cosmetic mistakes.
Solution: Change spaces to tabs, improve comments.
2022-05-09 20:09:23 +01:00
Bram Moolenaar
933c2922b5
patch 8.2.4914: string interpolation in :def function may fail
...
Problem: String interpolation in :def function may fail.
Solution: Do not terminate the expression. (closes #10377 )
2022-05-08 16:37:07 +01:00
Bram Moolenaar
70d87690a3
patch 8.2.4898: Coverity complains about pointer usage
...
Problem: Coverity complains about pointer usage.
Solution: Move code for increment/decerment.
2022-05-07 10:03:27 +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
Bram Moolenaar
09d9421b67
patch 8.2.4871: Vim9: in :def function no error for misplaced range
...
Problem: Vim9: in :def function no error for using a range with a command
that does not accept one.
Solution: Check for the command to accept a range. (closes #10330 )
2022-05-05 15:20:03 +01:00
Bram Moolenaar
c9af617ac6
patch 8.2.4863: accessing freed memory in test without the +channel feature
...
Problem: Accessing freed memory in test without the +channel feature.
(Dominique Pellé)
Solution: Do not generted PUSHCHANNEL or PUSHJOB if they are not
implemented. (closes #10350 )
2022-05-04 16:46:54 +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
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
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
Bram Moolenaar
a915fa0103
patch 8.2.4612: Vim9: cannot use a recursive call in a nested function
...
Problem: Vim9: cannot use a recursive call in a nested function. (Sergey
Vlasov)
Solution: Define the funcref before compiling the function. (closes #9989 )
2022-03-23 11:29:15 +00:00
Bram Moolenaar
397a87ac1c
patch 8.2.4602: Vim9: not enough test coverage for executing :def function
...
Problem: Vim9: not enough test coverage for executing :def function.
Solution: Add a few more tests. Fix uncovered problem. Remove dead code.
2022-03-20 21:14:15 +00:00
Bram Moolenaar
2995e5cf4e
patch 8.2.4590: Vim9: range type check has wrong offset
...
Problem: Vim9: range type check has wrong offset.
Solution: Adjust offset for CHECKTYPE. Remove other type check.
2022-03-18 21:41:47 +00:00
Bram Moolenaar
2e17fef225
patch 8.2.4589: cannot index the g: dictionary
...
Problem: Cannot index the g: dictionary.
Solution: Recognize using "g:[key]". (closes #9969 )
2022-03-18 19:44:48 +00: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
96923b7a14
patch 8.2.4573: a nested function is compiled for debugging without context
...
Problem: A nested function (closure) is compiled for debugging without
context.
Solution: Check if a nested function is marked for debugging before
compiling it. Give an error when trying to compile a closure
without its context. (closes #9951 )
2022-03-15 15:57:04 +00:00
Bram Moolenaar
4f3321f704
patch 8.2.4556: test fails without the +job or +channel feature
...
Problem: Test fails without the +job or +channel feature. (Dominique Pellé)
Solution: Adjust #ifdefs. Pass on skip flag. (closes #9942 )
2022-03-13 13:12:27 +00:00
Bram Moolenaar
53ba6ca5b2
patch 8.2.4539: when comparing special v:none and v:null are handled the same
...
Problem: When comparing special v:none and v:null are handled the same when
compiling.
Solution: Pass more information so that v:none can be handled differently at
compile time. (issue #9923 )
2022-03-10 19:23:28 +00:00
Bram Moolenaar
8acb9cc620
patch 8.2.4526: Vim9: cannot set variables to a null value
...
Problem: Vim9: cannot set variables to a null value.
Solution: Add null_list, null_job, etc.
2022-03-08 13:18:55 +00:00
Bram Moolenaar
204852ae2a
patch 8.2.4510: Vim9: shortening commands leads to confusing script
...
Problem: Vim9: shortening commands leads to confusing script.
Solution: In Vim9 script require at least ":cont" for ":continue", "const"
instead of "cons", "break" instead of "brea", "catch" instead of
"cat", "else" instead of "el" "elseif" instead of "elsei" "endfor"
instead of "endfo" "endif" instead of "en" "endtry" instead of
"endt", "finally" instead of "fina", "throw" instead of "th",
"while" instead of "wh".
2022-03-05 12:56:44 +00:00