Bram Moolenaar
e6536aa766
patch 8.2.1064: Vim9: no line break allowed before comperators
...
Problem: Vim9: no line break allowed before comperators.
Solution: Check for comperator after line break.
2020-06-26 22:00:38 +02:00
Bram Moolenaar
be7ee48876
patch 8.2.1063: Vim9: no line break allowed before || or &&
...
Problem: Vim9: no line break allowed before || or &&.
Solution: Check for operator after line break.
2020-06-26 21:38:51 +02:00
Bram Moolenaar
793648fb56
patch 8.2.1062: Vim9: no line break allowed inside "cond ? val1 : val2"
...
Problem: Vim9: no line break allowed inside "cond ? val1 : val2".
Solution: Check for operator after line break.
2020-06-26 21:28:25 +02:00
Bram Moolenaar
7acde51832
patch 8.2.1052: build failure with older compilers
...
Problem: Build failure with older compilers.
Solution: Move declaration to start of block.
2020-06-24 23:02:40 +02:00
Bram Moolenaar
b171fb1790
patch 8.2.1049: Vim9: leaking memory when using continuation line
...
Problem: Vim9: leaking memory when using continuation line.
Solution: Keep a pointer to the continuation line in evalarg_T. Centralize
checking for a next command.
2020-06-24 20:34:03 +02:00
Bram Moolenaar
5409f5d8c9
patch 8.2.1047: Vim9: script cannot use line continuation like :def function
...
Problem: Vim9: script cannot use line continuation like in a :def function.
Solution: Pass the getline function pointer to the eval() functions. Use it
for addition and multiplication operators.
2020-06-24 18:37:35 +02:00
Bram Moolenaar
0cb5bcf583
patch 8.2.1023: Vim9: redefining a function uses a new index every time
...
Problem: Vim9: redefining a function uses a new index every time.
Solution: When redefining a function clear the contents and re-use the
index.
2020-06-20 18:19:09 +02:00
Bram Moolenaar
9af78769ee
patch 8.2.0987: Vim9: cannot assign to [var; var]
...
Problem: Vim9: cannot assign to [var; var].
Solution: Assign rest of items to a list.
2020-06-16 11:34:42 +02:00
Bram Moolenaar
47a519a933
patch 8.2.0981: Vim9: cannot compile "[var, var] = list"
...
Problem: Vim9: cannot compile "[var, var] = list".
Solution: Implement list assignment.
2020-06-14 23:05:10 +02:00
Bram Moolenaar
df44a27b53
patch 8.2.0928: many type casts are used for vim_strnsave()
...
Problem: Many type casts are used for vim_strnsave().
Solution: Make the length argument size_t instead of int. (Ken Takata,
closes #5633 ) Remove some type casts.
2020-06-07 20:49:05 +02:00
Bram Moolenaar
a9c0104947
patch 8.2.0918: duplicate code for evaluating expression argument
...
Problem: Duplicate code for evaluating expression argument.
Solution: Merge the code and make the use more flexible.
2020-06-07 14:50:50 +02:00
Bram Moolenaar
367d59e6ba
patch 8.2.0847: typval related code is spread out
...
Problem: Typval related code is spread out.
Solution: Move code to new typval.c file. (Yegappan Lakshmanan, closes #6093 )
2020-05-30 17:06:14 +02:00
Bram Moolenaar
1919371b2b
patch 8.2.0824: still not enough memory allocated when converting string
...
Problem: Still not enough memory allocated when converting string with
special character.
Solution: Reserve space for expanding K_SPECIAL. (closes #6130 )
2020-05-25 23:01:42 +02:00
Bram Moolenaar
822ba24743
patch 8.2.0818: Vim9: using a discovery phase doesn't work well
...
Problem: Vim9: using a discovery phase doesn't work well.
Solution: Remove the discovery phase, instead compile a function only when
it is used. Add :defcompile to compile def functions earlier.
2020-05-24 23:00:18 +02:00
Bram Moolenaar
f7271e8316
patch 8.2.0817: not enough memory allocated when converting string
...
Problem: Not enough memory allocated when converting string with special
character.
Solution: Reserve space for modifier code. (closes #6130 )
2020-05-24 18:45:07 +02:00
Bram Moolenaar
6f5b6dfb16
patch 8.2.0771: Vim9: cannot call a compiled closure from not compiled code
...
Problem: Vim9: cannot call a compiled closure from not compiled code.
Solution: Pass funcexe to call_user_func().
2020-05-16 21:20:12 +02:00
Bram Moolenaar
227a69de1e
patch 8.2.0755: Vim9: No error when variable initializer is not a constant
...
Problem: Vim9: No error when variable initializer is not a constant.
Solution: Return FAIL when trying to get a variable value. Do not execute a
script when an error is deteted in the first or second phase.
2020-05-15 18:17:28 +02:00
Bram Moolenaar
32e351179e
patch 8.2.0753: Vim9: expressions are evaluated in the discovery phase
...
Problem: Vim9: expressions are evaluated in the discovery phase.
Solution: Bail out if an expression is not a constant. Require a type for
declared constants.
2020-05-14 22:41:15 +02:00
Bram Moolenaar
7e9f351b2e
patch 8.2.0751: Vim9: performance can be improved
...
Problem: Vim9: performance can be improved.
Solution: Don't call break. Inline check for list materialize. Make an
inline version of ga_grow().
2020-05-13 22:44:22 +02:00
Bram Moolenaar
b68b346e6d
patch 8.2.0703: Vim9: closure cannot store value in outer context
...
Problem: Vim9: closure cannot store value in outer context.
Solution: Make storing value in outer context work. Make :disassemble
accept a function reference.
2020-05-06 21:06:30 +02:00
Bram Moolenaar
f7779c63d4
patch 8.2.0684: Vim9: memory leak when using lambda
...
Problem: Vim9: memory leak when using lambda.
Solution: Move the funccal context to the partial. Free the function when
exiting.
2020-05-03 15:38:16 +02:00
Bram Moolenaar
6adb9ea0a6
patch 8.2.0670: cannot change window when evaluating 'completefunc'
...
Problem: Cannot change window when evaluating 'completefunc'.
Solution: Make a difference between not changing text or buffers and also
not changing window.
2020-04-30 22:31:18 +02:00
Bram Moolenaar
92b83ccfda
patch 8.2.0634: crash with null partial and blob
...
Problem: Crash with null partial and blob.
Solution: Check for NULL pointer. Add more tests. (Yegappan Lakshmanan,
closes #5984 )
2020-04-25 15:24:44 +02:00
Bram Moolenaar
9d8d0b5c64
patch 8.2.0633: crash when using null partial in filter()
...
Problem: Crash when using null partial in filter().
Solution: Fix crash. Add more tests. (Yegappan Lakshmanan, closes #5976 )
2020-04-24 22:47:31 +02:00
Bram Moolenaar
f93c7fea08
patch 8.2.0626: Vim9: wrong syntax of function in Vim9 script
...
Problem: Vim9: wrong syntax of function in Vim9 script.
Solution: Give error for missing space. Implement :echomsg and :echoerr.
(closes #5670 )
2020-04-23 22:16:53 +02:00
Bram Moolenaar
ea04a6e8ba
patch 8.2.0619: null dict is not handled like an empty dict
...
Problem: Null dict is not handled like an empty dict.
Solution: Fix the code and add tests. (Yegappan Lakshmanan, closes #5968 )
2020-04-23 13:38:02 +02:00
Bram Moolenaar
db950e4c03
patch 8.2.0618: echoing a null list results in no output
...
Problem: Echoing a null list results in no output. (Yegappan Lakshmanan)
Solution: Return "[]" instead of NULL in echo_string_core().
2020-04-22 19:13:19 +02:00
Bram Moolenaar
faac410409
patch 8.2.0611: Vim9: no check for space before #comment
...
Problem: Vim9: no check for space before #comment.
Solution: Add space checks.
2020-04-20 17:46:14 +02:00
Bram Moolenaar
d72c1bf0a6
patch 8.2.0601: Vim9: :unlet is not compiled
...
Problem: Vim9: :unlet is not compiled.
Solution: Implement :unlet instruction and check for errors.
2020-04-19 16:28:59 +02:00
Bram Moolenaar
4a8d9f2ed8
patch 8.2.0586: Vim9: # comment not sufficiently tested
...
Problem: Vim9: # comment not sufficiently tested
Solution: Check for preceding white space.
2020-04-16 22:54:32 +02:00
Bram Moolenaar
7a09224583
patch 8.2.0585: Vim9: # comment not recognized after :vim9script
...
Problem: Vim9: # comment not recognized after :vim9script.
Solution: Check script type. Make comment after ":echo" work. And in
several other places.
2020-04-16 22:10:49 +02:00
Bram Moolenaar
a80faa8930
patch 8.2.0559: clearing a struct is verbose
...
Problem: Clearing a struct is verbose.
Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
2020-04-12 19:37:17 +02:00
Bram Moolenaar
4c68375057
patch 8.2.0517: Vim9: cannot separate "func" and "func(): void"
...
Problem: Vim9: cannot separate "func" and "func(): void".
Solution: Use VAR_ANY for "any" and VAR_UNKNOWN for "no type".
2020-04-05 21:38:23 +02:00
Bram Moolenaar
aeea72151c
patch 8.2.0500: using the same loop in many places
...
Problem: Using the same loop in many places.
Solution: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339 )
2020-04-02 18:50:46 +02:00
Bram Moolenaar
e69f6d044c
patch 8.2.0493: Vim9: some error messages not tested
...
Problem: Vim9: some error messages not tested.
Solution: Add more tests. Fix uncovered bugs.
2020-04-01 22:11:01 +02:00
Bram Moolenaar
db99f9f29a
patch 8.2.0436: no warnings for incorrect printf arguments
...
Problem: No warnings for incorrect printf arguments.
Solution: Fix attribute in declaration. Fix uncovered mistakes. (Dominique
Pelle, closes #5834 )
2020-03-23 22:12:22 +01:00
Bram Moolenaar
41fe061753
patch 8.2.0341: using ":for" in Vim9 script gives an error
...
Problem: Using ":for" in Vim9 script gives an error.
Solution: Pass the LET_NO_COMMAND flag. (closes #5715 )
2020-03-01 16:22:40 +01:00
Bram Moolenaar
dd58923c6b
patch 8.2.0334: abort called when using test_void()
...
Problem: Abort called when using test_void(). (Dominique Pelle)
Solution: Only give an error, don't abort.
2020-02-29 17:38:12 +01:00
Bram Moolenaar
f9706e9df0
patch 8.2.0296: mixing up "long long" and __int64 may cause problems
...
Problem: Mixing up "long long" and __int64 may cause problems. (John
Marriott)
Solution: Pass varnumber_T to vim_snprintf(). Add v:numbersize.
2020-02-22 14:27:04 +01:00
Bram Moolenaar
50985eb1f0
patch 8.2.0159: non-materialized range() list causes problems
...
Problem: Non-materialized range() list causes problems. (Fujiwara Takuya)
Solution: Materialize the list where needed.
2020-01-27 22:09:39 +01:00
Bram Moolenaar
21b9e9773d
patch 8.2.0154: reallocating the list of scripts is inefficient
...
Problem: Reallocating the list of scripts is inefficient.
Solution: Instead of using a growarray of scriptitem_T, store pointers and
allocate each scriptitem_T separately. Also avoids that the
growarray pointers change when sourcing a new script.
2020-01-26 19:26:46 +01:00
Bram Moolenaar
8a7d6542b3
patch 8.2.0149: maintaining a Vim9 branch separately is more work
...
Problem: Maintaining a Vim9 branch separately is more work.
Solution: Merge the Vim9 script changes.
2020-01-26 15:56:19 +01:00
Bram Moolenaar
7ebcba61b2
patch 8.2.0114: info about sourced scripts is scattered
...
Problem: Info about sourced scripts is scattered.
Solution: Use scriptitem_T for info about a script, including s: variables.
Drop ga_scripts.
2020-01-12 17:42:55 +01:00
Bram Moolenaar
9b4a15d5db
patch 8.2.0111: VAR_SPECIAL is also used for booleans
...
Problem: VAR_SPECIAL is also used for booleans.
Solution: Add VAR_BOOL for better type checking.
2020-01-11 16:05:23 +01:00
Bram Moolenaar
b662591e50
patch 8.2.0104: using channel or job with ":execute" has strange effects
...
Problem: Using channel or job with ":execute" has strange effects.
Solution: Give an error message for Job and Channel.
2020-01-08 20:09:01 +01:00
Bram Moolenaar
e2a8f0773e
patch 8.2.0103: using null object with execute() has strange effects
...
Problem: Using null object with execute() has strange effects.
Solution: Give an error message ofr Job and Channel.
2020-01-08 19:32:18 +01:00
Bram Moolenaar
9db2afe46d
patch 8.2.0101: crash when passing null object to ":echomsg"
...
Problem: Crash when passing null object to ":echomsg".
Solution: Check for NULL pointer. (Yasuhiro Matsumoto, closes #5460 )
2020-01-08 18:56:20 +01:00
Bram Moolenaar
0892832bb6
patch 8.2.0084: complete item "user_data" can only be a string
...
Problem: Complete item "user_data" can only be a string.
Solution: Accept any type of variable. (closes #5412 )
2020-01-04 14:32:48 +01:00
Bram Moolenaar
87396072c5
patch 8.2.0069: ETYPE_ is used for two different enums
...
Problem: ETYPE_ is used for two different enums.
Solution: Rename one to use EXPR_.
2019-12-31 22:36:18 +01:00
Bram Moolenaar
3fbcc128cb
patch 8.2.0061: the execute stack can grow big and never shrinks
...
Problem: The execute stack can grow big and never shrinks.
Solution: Reduce the size in gargage collect.
2019-12-30 19:19:53 +01:00