summaryrefslogtreecommitdiff
path: root/src/evalfunc.c
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.2.3889: duplicate code for translating script-local function namev8.2.3889Yegappan Lakshmanan2021-12-241-12/+1
| | | | | | Problem: Duplicate code for translating script-local function name. Solution: Move the code to get_scriptlocal_funcname(). (Yegappan Lakshmanan, closes #9393)
* patch 8.2.3882: more duplicated code in f_getreginfo()v8.2.3882zeertzjq2021-12-241-18/+6
| | | | | Problem: More duplicated code in f_getreginfo(). Solution: Also use getreg_get_regname(). (closes #9398)
* patch 8.2.3879: getreg() and getregtype() contain dead codev8.2.3879Bram Moolenaar2021-12-241-47/+46
| | | | | | Problem: getreg() and getregtype() contain dead code. Solution: Remove the needless check. (closes #9392) Also refactor to put common code in a shared function.
* patch 8.2.3872: Vim9: finddir() and uniq() return types can be more specificv8.2.3872Bram Moolenaar2021-12-221-2/+11
| | | | | Problem: Vim9: finddir() and uniq() return types can be more specific. Solution: Adjust the return type.
* patch 8.2.3866: Vim9: type checking global variables is inconsistentv8.2.3866Bram Moolenaar2021-12-211-24/+55
| | | | | Problem: Vim9: type checking global variables is inconsistent. Solution: Use the "unknown" type in more places.
* patch 8.2.3857: Vim9: inconsistent error for using function()v8.2.3857Bram Moolenaar2021-12-201-13/+7
| | | | | | Problem: Vim9: inconsistent error for using function(). Solution: Use a runtime type check for the result of function(). (closes #8492)
* patch 8.2.3848: cannot use reduce() for a stringv8.2.3848rbtnn2021-12-181-1/+16
| | | | | Problem: Cannot use reduce() for a string. Solution: Make reduce() work with a string. (Naruhiko Nishino, closes #9366)
* patch 8.2.3830: error messages are spread outv8.2.3830Bram Moolenaar2021-12-161-4/+5
| | | | | Problem: Error messages are spread out. Solution: Move more error messages to errors.h.
* patch 8.2.3822: leaking memory in map() and filter(), no string in Vim9v8.2.3822Bram Moolenaar2021-12-161-1/+17
| | | | | | | Problem: Leaking memory in map() and filter(), cannot use a string argument in Vim9 script. Solution: Fix the leak, adjust the argument check, also run the tests as Vim9 script. (Yegappan Lakshmanan, closes #9354)
* patch 8.2.3795: too many #ifdefsv8.2.3795Bram Moolenaar2021-12-131-15/+1
| | | | | Problem: Too many #ifdefs. Solution: Graduate the jumplist feature.
* patch 8.2.3705: cannot pass a lambda name to function() or funcref()v8.2.3705Bram Moolenaar2021-11-301-3/+2
| | | | | | Problem: Cannot pass a lambda name to function() or funcref(). (Yegappan Lakshmanan) Solution: Handle a lambda name differently.
* patch 8.2.3699: the +title feature adds a lot of #ifdef but little codev8.2.3699Bram Moolenaar2021-11-291-7/+1
| | | | | Problem: The +title feature adds a lot of #ifdef but little code. Solution: Graduate the +title feature.
* patch 8.2.3578: manipulating highlighting is complicatedv8.2.3578Yegappan Lakshmanan2021-11-031-0/+4
| | | | | | Problem: Manipulating highlighting is complicated. Solution: Add the hlget() and hlset() functions. (Yegappan Lakshmanan, closes #9039)
* patch 8.2.3576: some functions are not documented for use with a methodv8.2.3576Sean Dewar2021-11-031-1/+1
| | | | | | Problem: Some functions are not documented for use with a method. Solution: Add examples. Fix that sign_unplacelist() only takes one argument. (Sean Dewar, closes #9081)
* patch 8.2.3530: ":buf \{a}" fails while ":edit \{a}" worksv8.2.3530Bram Moolenaar2021-10-171-1/+1
| | | | | Problem: ":buf \{a}" fails while ":edit \{a}" works. Solution: Unescape "\{". (closes #8917)
* patch 8.2.3510: changes are only detected with one second accuracyv8.2.3510Leah Neukirchen2021-10-141-0/+7
| | | | | | Problem: Changes are only detected with one second accuracy. Solution: Use the nanosecond time if possible. (Leah Neukirchen, closes #8873, closes #8875)
* patch 8.2.3456: Vim9: not all functions are tested with empty string argumentv8.2.3456Yegappan Lakshmanan2021-09-261-3/+2
| | | | | Problem: Vim9: Not all functions are tested with an empty string argument. Solution: Add tests with empty strings. (Yegappan Lakshmanan, closes #8915)
* patch 8.2.3438: cannot manipulate blobsv8.2.3438Yegappan Lakshmanan2021-09-141-0/+14
| | | | | | Problem: Cannot manipulate blobs. Solution: Add blob2list() and list2blob(). (Yegappan Lakshmanan, closes #8868)
* patch 8.2.3415: Vim9: not all function argument types are properly checkedv8.2.3415Yegappan Lakshmanan2021-09-081-6/+2
| | | | | | Problem: Vim9: Not all function argument types are properly checked. Solution: Add and improve argument type checks. (Yegappan Lakshmanan, closes #8839)
* patch 8.2.3401: Vim9: cannot use negative count with finddir() and findfile()v8.2.3401Bram Moolenaar2021-09-041-2/+2
| | | | | Problem: Vim9: cannot use a negative count with finddir() and findfile(). Solution: Adjust the return type. (closes #8776)
* patch 8.2.3396: when libcall() fails invalid pointer may be usedv8.2.3396Bram Moolenaar2021-09-021-0/+5
| | | | | Problem: When libcall() fails invalid pointer may be used. Solution: Initialize the string to NULL. (Yasuhiro Matsumoto, closes #8829)
* patch 8.2.3380: crash when using NULL string for funcref()v8.2.3380Bram Moolenaar2021-08-281-0/+5
| | | | | Problem: Crash when using NULL string for funcref(). Solution: Check for NULL argument. (issue #8260)
* patch 8.2.3360: user function completion fails with dict functionv8.2.3360naohiro ono2021-08-191-2/+3
| | | | | | | Problem: User function completion fails with dict function. Solution: Do not stop sequencing through the list if user functions when encountering an empty name. (Naohiro Ono, closes #8765, closes #8774)
* patch 8.2.3356: adding many text properties requires a lot of function callsv8.2.3356Yegappan Lakshmanan2021-08-161-0/+3
| | | | | | Problem: Adding many text properties requires a lot of function calls. Solution: Add the prop_add_list() function. (Yegappan Lakshmanan, closes #8751)
* patch 8.2.3337: completing "call g:" returns entries with just "g:"v8.2.3337Bram Moolenaar2021-08-131-1/+1
| | | | | Problem: Completing "call g:" returns entries with just "g:". (Naohiro Ono) Solution: Skip empty strings returned by get_user_func_name(). (closes #8753)
* patch 8.2.3334: Vim9: not enough tests run with Vim9v8.2.3334Bram Moolenaar2021-08-121-1/+2
| | | | | | Problem: Vim9: not enough tests run with Vim9. Solution: Run a few more tests in Vim9 script and :def function. Fix islocked(). Fix error for locking local variable.
* patch 8.2.3316: float test failsv8.2.3316Bram Moolenaar2021-08-081-1/+1
| | | | | Problem: Float test fails. Solution: Add missing change.
* patch 8.2.3314: behavior of exists() in a :def function is unpredictablev8.2.3314Bram Moolenaar2021-08-081-0/+9
| | | | | Problem: Behavior of exists() in a :def function is unpredictable. Solution: Add exists_compiled().
* patch 8.2.3300: Lua: can only execute on Vim command at a timev8.2.3300Yegappan Lakshmanan2021-08-061-0/+42
| | | | | | | Problem: Lua: can only execute on Vim command at a time. Not easy to get the Vim version. Solution: Make vim.command() accept multiple lines. Add vim.version(). (Yegappan Lakshmanan, closes #8716)
* patch 8.2.3299: Vim9: exists() does not handle much at compile timev8.2.3299Bram Moolenaar2021-08-051-0/+7
| | | | | Problem: Vim9: exists() does not handle much at compile time. Solution: Handle variable names. (closes #8688)
* patch 8.2.3276: Vim9: exists() can only be evaluated at runtimev8.2.3276Bram Moolenaar2021-08-021-2/+1
| | | | | Problem: Vim9: exists() can only be evaluated at runtime. Solution: Evaluate at compile time for option name literals. (closes #8437)
* patch 8.2.3269: Vim9: wrong argument check for partialv8.2.3269Bram Moolenaar2021-08-011-10/+16
| | | | | | | Problem: Vim9: wrong argument check for partial. (Naohiro Ono) Solution: Handle getting return type without arguments. Correct the minimal number of arguments for what is included in the partial. (closes #8667)
* patch 8.2.3261: Vim9: when compiling repeat(123, N) return type is numberv8.2.3261Bram Moolenaar2021-07-311-1/+8
| | | | | Problem: Vim9: when compiling repeat(123, N) return type is number. Solution: Make return type a string. (closes #8664)
* patch 8.2.3252: duplicated code for adding buffer linesv8.2.3252Yegappan Lakshmanan2021-07-301-36/+0
| | | | | | Problem: Duplicated code for adding buffer lines. Solution: Move code to a common function. Also move map functions to map.c. (Yegappan Lakshmanan, closes #8665)
* patch 8.2.3229: Vim9: runtime and compile time type checks are not the samev8.2.3229Yegappan Lakshmanan2021-07-271-33/+278
| | | | | | Problem: Vim9: runtime and compile time type checks are not the same. Solution: Add more runtime type checks for builtin functions. (Yegappan Lakshmanan, closes #8646)
* patch 8.2.3226: new digraph functions use old naming schemev8.2.3226h-east2021-07-261-8/+8
| | | | | Problem: New digraph functions use old naming scheme. Solution: Use the digraph_ prefix. (Hirohito Higashi, closes #8580)
* patch 8.2.3221: Vim9: argument types are not checked at compile timev8.2.3221Yegappan Lakshmanan2021-07-251-10/+70
| | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks. (Yegappan Lakshmanan, closes #8632)
* patch 8.2.3215: Vim9: argument types are not checked at compile timev8.2.3215Yegappan Lakshmanan2021-07-241-77/+112
| | | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks. Sort the argument lists. (Yegappan Lakshmanan, closes #8626)
* patch 8.2.3211: Vim9: argument types are not checked at compile timev8.2.3211Yegappan Lakshmanan2021-07-241-17/+48
| | | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks. Fix type check for matchaddpos(). (Yegappan Lakshmanan, closes #8619)
* patch 8.2.3206: Vim9: argument types are not checked at compile timev8.2.3206Yegappan Lakshmanan2021-07-231-82/+138
| | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks. (Yegappan Lakshmanan, closes #8611)
* patch 8.2.3203: Vim9: compiled string expression causes type errorv8.2.3203Bram Moolenaar2021-07-221-1/+3
| | | | | | Problem: Vim9: compiled string expression causes type error. (Yegappan Lakshmanan) Solution: Remove the string type from the stack.
* patch 8.2.3194: Vim9: argument types are not checked at compile timev8.2.3194Yegappan Lakshmanan2021-07-211-92/+115
| | | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks, simplify some. (Yegappan Lakshmanan, closes #8598)
* patch 8.2.3188: Vim9: argument types are not checked at compile timev8.2.3188Yegappan Lakshmanan2021-07-201-103/+385
| | | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks, also at runtime. (Yegappan Lakshmanan, closes #8587)
* patch 8.2.3184: cannot add a digraph with a leading spacev8.2.3184mityu2021-07-191-0/+15
| | | | | | | Problem: Cannot add a digraph with a leading space. It is not easy to list existing digraphs. Solution: Add setdigraph(), setdigraphlist(), getdigraph() and getdigraphlist(). (closes #8580)
* patch 8.2.3173: Vim9: argument types are not checked at compile timev8.2.3173Yegappan Lakshmanan2021-07-171-22/+55
| | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add more type checks. (Yegappan Lakshmanan, closes #8581)
* patch 8.2.3162: Vim9: argument types are not checked at compile timev8.2.3162Yegappan Lakshmanan2021-07-151-105/+144
| | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add more type checks. (Yegappan Lakshmanan, closes #8560)
* patch 8.2.3158: strange error message when using islocked() with a numberv8.2.3158Bram Moolenaar2021-07-131-1/+4
| | | | | | Problem: Strange error message when using islocked() with a number. (Yegappan Lakshmanan) Solution: Check that the name is empty.
* patch 8.2.3154: Vim9: some type checks for builtin functions failv8.2.3154Yegappan Lakshmanan2021-07-111-3/+4
| | | | | | Problem: Vim9: some type checks for builtin functions fail. Solution: Correct the type checks. (Yegappan Lakshmanan, closes #8551, closes #8550)
* patch 8.2.3150: Vim9: argument types are not checked at compile timev8.2.3150Yegappan Lakshmanan2021-07-111-19/+51
| | | | | Problem: Vim9: argument types are not checked at compile time. Solution: Add more type checks. (Yegappan Lakshmanan, closes #8545)
* patch 8.2.3148: Vim9: function arg type check does not handle base offsetv8.2.3148Bram Moolenaar2021-07-111-1/+2
| | | | | | Problem: Vim9: function arg type check does not handle base offset. Solution: Take the base offset into account when checking builtin function argument types.