summaryrefslogtreecommitdiffstats
path: root/src/eval.c
AgeCommit message (Collapse)Author
2020-07-01patch 8.2.1111: inconsistent naming of get_list_tv() and eval_dict()v8.2.1111Bram Moolenaar
Problem: Inconsistent naming of get_list_tv() and eval_dict(). Solution: Rename get_list_tv() to eval_list(). Similarly for eval_number(), eval_string(), eval_lit_string() and a few others.
2020-07-01patch 8.2.1110: Vim9: line continuation does not work in function argumentsv8.2.1110Bram Moolenaar
Problem: Vim9: line continuation does not work in function arguments. Solution: Pass "evalarg" to get_func_tv(). Fix seeing double quoted string as comment.
2020-07-01patch 8.2.1103: Coverity reports an unnecessary NULL checkv8.2.1103Bram Moolenaar
Problem: Coverity reports an unnecessary NULL check. Solution: Remove the check for NULL.
2020-06-30patch 8.2.1100: Vim9: cannot use line break in :execute argumentv8.2.1100Bram Moolenaar
Problem: Vim9: cannot use line break in :execute, :echomsg and :echoerr argument. Solution: Check for line break.
2020-06-30patch 8.2.1099: Vim9: cannot use line break in :cexpr argumentv8.2.1099Bram Moolenaar
Problem: Vim9: cannot use line break in :cexpr argument. Solution: Check for line break.
2020-06-30patch 8.2.1098: Vim9: cannot use line break in :throw argumentv8.2.1098Bram Moolenaar
Problem: Vim9: cannot use line break in :throw argument. Solution: Check for line break.
2020-06-29patch 8.2.1090: may use NULL pointer when skipping over namev8.2.1090Bram Moolenaar
Problem: May use NULL pointer when skipping over name. Solution: Always set ll_name_end.
2020-06-28patch 8.2.1080: Vim9: no line break allowed in a for loopv8.2.1080Bram Moolenaar
Problem: Vim9: no line break allowed in a for loop. Solution: Skip line breaks in for command.
2020-06-28patch 8.2.1079: Vim9: no line break allowed in a while loopv8.2.1079Bram Moolenaar
Problem: Vim9: no line break allowed in a while loop. Solution: Update stored loop lines when finding line breaks.
2020-06-27patch 8.2.1076: Vim9: no line break allowed in :if expressionv8.2.1076Bram Moolenaar
Problem: Vim9: no line break allowed in :if expression. Solution: Skip linebreak.
2020-06-27patch 8.2.1075: Vim9: no line break allowed in :echo expressionv8.2.1075Bram Moolenaar
Problem: Vim9: no line break allowed in :echo expression. Solution: Skip linebreak.
2020-06-27patch 8.2.1074: Vim9: no line break allowed after some operatorsv8.2.1074Bram Moolenaar
Problem: Vim9: no line break allowed after some operators. Solution: Skip a line break after the operator. Add eval_may_get_next_line() to simplify checking for a line break.
2020-06-27patch 8.2.1073: Vim9: no line break allowed in () expressionv8.2.1073Bram Moolenaar
Problem: Vim9: no line break allowed in () expression. Solution: Skip a line break.
2020-06-27patch 8.2.1071: Vim9: no line break allowed inside a lambdav8.2.1071Bram Moolenaar
Problem: Vim9: no line break allowed inside a lambda. Solution: Handle line break inside a lambda in Vim9 script.
2020-06-27patch 8.2.1068: Vim9: no line break allowed inside a dictv8.2.1068Bram Moolenaar
Problem: Vim9: no line break allowed inside a dict. Solution: Handle line break inside a dict in Vim9 script.
2020-06-27patch 8.2.1067: expression "!expr->func()" does not workv8.2.1067Bram Moolenaar
Problem: Expression "!expr->func()" does not work. Solution: Apply plus and minus earlier. (closes #6348)
2020-06-26patch 8.2.1065: Vim9: no line break allowed inside a listv8.2.1065Bram Moolenaar
Problem: Vim9: no line break allowed inside a list. Solution: Handle line break inside a list in Vim9 script.
2020-06-26patch 8.2.1064: Vim9: no line break allowed before comperatorsv8.2.1064Bram Moolenaar
Problem: Vim9: no line break allowed before comperators. Solution: Check for comperator after line break.
2020-06-26patch 8.2.1063: Vim9: no line break allowed before || or &&v8.2.1063Bram Moolenaar
Problem: Vim9: no line break allowed before || or &&. Solution: Check for operator after line break.
2020-06-26patch 8.2.1062: Vim9: no line break allowed inside "cond ? val1 : val2"v8.2.1062Bram Moolenaar
Problem: Vim9: no line break allowed inside "cond ? val1 : val2". Solution: Check for operator after line break.
2020-06-24patch 8.2.1052: build failure with older compilersv8.2.1052Bram Moolenaar
Problem: Build failure with older compilers. Solution: Move declaration to start of block.
2020-06-24patch 8.2.1049: Vim9: leaking memory when using continuation linev8.2.1049Bram Moolenaar
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-24patch 8.2.1047: Vim9: script cannot use line continuation like :def functionv8.2.1047Bram Moolenaar
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-20patch 8.2.1023: Vim9: redefining a function uses a new index every timev8.2.1023Bram Moolenaar
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-16patch 8.2.0987: Vim9: cannot assign to [var; var]v8.2.0987Bram Moolenaar
Problem: Vim9: cannot assign to [var; var]. Solution: Assign rest of items to a list.
2020-06-14patch 8.2.0981: Vim9: cannot compile "[var, var] = list"v8.2.0981Bram Moolenaar
Problem: Vim9: cannot compile "[var, var] = list". Solution: Implement list assignment.
2020-06-07patch 8.2.0928: many type casts are used for vim_strnsave()v8.2.0928Bram Moolenaar
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-07patch 8.2.0918: duplicate code for evaluating expression argumentv8.2.0918Bram Moolenaar
Problem: Duplicate code for evaluating expression argument. Solution: Merge the code and make the use more flexible.
2020-05-30patch 8.2.0847: typval related code is spread outv8.2.0847Bram Moolenaar
Problem: Typval related code is spread out. Solution: Move code to new typval.c file. (Yegappan Lakshmanan, closes #6093)
2020-05-25patch 8.2.0824: still not enough memory allocated when converting stringv8.2.0824Bram Moolenaar
Problem: Still not enough memory allocated when converting string with special character. Solution: Reserve space for expanding K_SPECIAL. (closes #6130)
2020-05-24patch 8.2.0818: Vim9: using a discovery phase doesn't work wellv8.2.0818Bram Moolenaar
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-24patch 8.2.0817: not enough memory allocated when converting stringv8.2.0817Bram Moolenaar
Problem: Not enough memory allocated when converting string with special character. Solution: Reserve space for modifier code. (closes #6130)
2020-05-16patch 8.2.0771: Vim9: cannot call a compiled closure from not compiled codev8.2.0771Bram Moolenaar
Problem: Vim9: cannot call a compiled closure from not compiled code. Solution: Pass funcexe to call_user_func().
2020-05-15patch 8.2.0755: Vim9: No error when variable initializer is not a constantv8.2.0755Bram Moolenaar
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-14patch 8.2.0753: Vim9: expressions are evaluated in the discovery phasev8.2.0753Bram Moolenaar
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-13patch 8.2.0751: Vim9: performance can be improvedv8.2.0751Bram Moolenaar
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-06patch 8.2.0703: Vim9: closure cannot store value in outer contextv8.2.0703Bram Moolenaar
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-03patch 8.2.0684: Vim9: memory leak when using lambdav8.2.0684Bram Moolenaar
Problem: Vim9: memory leak when using lambda. Solution: Move the funccal context to the partial. Free the function when exiting.
2020-04-30patch 8.2.0670: cannot change window when evaluating 'completefunc'v8.2.0670Bram Moolenaar
Problem: Cannot change window when evaluating 'completefunc'. Solution: Make a difference between not changing text or buffers and also not changing window.
2020-04-25patch 8.2.0634: crash with null partial and blobv8.2.0634Bram Moolenaar
Problem: Crash with null partial and blob. Solution: Check for NULL pointer. Add more tests. (Yegappan Lakshmanan, closes #5984)
2020-04-24patch 8.2.0633: crash when using null partial in filter()v8.2.0633Bram Moolenaar
Problem: Crash when using null partial in filter(). Solution: Fix crash. Add more tests. (Yegappan Lakshmanan, closes #5976)
2020-04-23patch 8.2.0626: Vim9: wrong syntax of function in Vim9 scriptv8.2.0626Bram Moolenaar
Problem: Vim9: wrong syntax of function in Vim9 script. Solution: Give error for missing space. Implement :echomsg and :echoerr. (closes #5670)
2020-04-23patch 8.2.0619: null dict is not handled like an empty dictv8.2.0619Bram Moolenaar
Problem: Null dict is not handled like an empty dict. Solution: Fix the code and add tests. (Yegappan Lakshmanan, closes #5968)
2020-04-22patch 8.2.0618: echoing a null list results in no outputv8.2.0618Bram Moolenaar
Problem: Echoing a null list results in no output. (Yegappan Lakshmanan) Solution: Return "[]" instead of NULL in echo_string_core().
2020-04-20patch 8.2.0611: Vim9: no check for space before #commentv8.2.0611Bram Moolenaar
Problem: Vim9: no check for space before #comment. Solution: Add space checks.
2020-04-19patch 8.2.0601: Vim9: :unlet is not compiledv8.2.0601Bram Moolenaar
Problem: Vim9: :unlet is not compiled. Solution: Implement :unlet instruction and check for errors.
2020-04-16patch 8.2.0586: Vim9: # comment not sufficiently testedv8.2.0586Bram Moolenaar
Problem: Vim9: # comment not sufficiently tested Solution: Check for preceding white space.
2020-04-16patch 8.2.0585: Vim9: # comment not recognized after :vim9scriptv8.2.0585Bram Moolenaar
Problem: Vim9: # comment not recognized after :vim9script. Solution: Check script type. Make comment after ":echo" work. And in several other places.
2020-04-12patch 8.2.0559: clearing a struct is verbosev8.2.0559Bram Moolenaar
Problem: Clearing a struct is verbose. Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
2020-04-05patch 8.2.0517: Vim9: cannot separate "func" and "func(): void"v8.2.0517Bram Moolenaar
Problem: Vim9: cannot separate "func" and "func(): void". Solution: Use VAR_ANY for "any" and VAR_UNKNOWN for "no type".