summaryrefslogtreecommitdiffstats
path: root/src/eval.c
AgeCommit message (Collapse)Author
2019-12-01patch 8.1.2378: using old C style commentsv8.1.2378Bram Moolenaar
Problem: Using old C style comments. Solution: Use // comments where appropriate.
2019-11-30patch 8.1.2371: FEAT_TEXT_PROP is a confusing namev8.1.2371Bram Moolenaar
Problem: FEAT_TEXT_PROP is a confusing name. Solution: Use FEAT_PROP_POPUP. (Naruhiko Nishino, closes #5291)
2019-11-26patch 8.1.2348: :const cannot be followed by "| endif"v8.1.2348Bram Moolenaar
Problem: :const cannot be followed by "| endif". Solution: Check following command for :const. (closes #5269) Also fix completion after :const.
2019-10-13patch 8.1.2145: cannot map <C-H> when modifyOtherKeys is enabledv8.1.2145Bram Moolenaar
Problem: Cannot map <C-H> when modifyOtherKeys is enabled. Solution: Add the <C-H> mapping twice, both with modifier and as 0x08. Use only the first one when modifyOtherKeys has been detected.
2019-10-06patch 8.1.2120: some MB_ macros are more complicated than necessaryv8.1.2120Bram Moolenaar
Problem: Some MB_ macros are more complicated than necessary. (Dominique Pelle) Solution: Simplify the macros. Expand inline.
2019-10-01patch 8.1.2107: various memory leaks reported by asanv8.1.2107Bram Moolenaar
Problem: Various memory leaks reported by asan. Solution: Free the memory. (Ozaki Kiichi, closes #5003)
2019-09-15patch 8.1.2035: recognizing octal numbers is confusingv8.1.2035Bram Moolenaar
Problem: Recognizing octal numbers is confusing. Solution: Introduce scriptversion 4: do not use octal and allow for single quote inside numbers.
2019-09-04patch 8.1.1979: code for handling file names is spread outv8.1.1979Bram Moolenaar
Problem: Code for handling file names is spread out. Solution: Move code to new filepath.c file. Graduate FEAT_MODIFY_FNAME.
2019-09-04patch 8.1.1978: the eval.c file is too bigv8.1.1978Bram Moolenaar
Problem: The eval.c file is too big. Solution: Move filter() and map() to list.c.
2019-09-02patch 8.1.1964: crash when using nested map() and filter()v8.1.1964Bram Moolenaar
Problem: Crash when using nested map() and filter(). Solution: Do not set the v:key type to string without clearing the pointer.
2019-09-01patch 8.1.1957: more code can be moved to evalvars.cv8.1.1957Bram Moolenaar
Problem: More code can be moved to evalvars.c. Solution: Move code to where it fits better. (Yegappan Lakshmanan, closes #4883)
2019-08-30patch 8.1.1943: more code can be moved to evalvars.cv8.1.1943Bram Moolenaar
Problem: More code can be moved to evalvars.c. Solution: Move it, clean up comments. Also move some window related functions to window.c. (Yegappan Lakshmanan, closes #4874)
2019-08-29patch 8.1.1940: script tests failv8.1.1940Bram Moolenaar
Problem: Script tests fail. Solution: Don't set vimvars type in set_vim_var_nr().
2019-08-29patch 8.1.1939: code for handling v: variables in generic eval filev8.1.1939Bram Moolenaar
Problem: Code for handling v: variables in generic eval file. Solution: Move v: variables to evalvars.c. (Yegappan Lakshmanan, closes #4872)
2019-08-27patch 8.1.1933: the eval.c file is too bigv8.1.1933Bram Moolenaar
Problem: The eval.c file is too big. Solution: Move code related to variables to evalvars.c. (Yegappan Lakshmanan, closes #4868)
2019-08-23patch 8.1.1913: not easy to compute the space on the command linev8.1.1913Bram Moolenaar
Problem: Not easy to compute the space on the command line. Solution: Add v:echospace. (Daniel Hahler, closes #4732)
2019-08-20patch 8.1.1894: not checking for out-of-memory of autoload_name()v8.1.1894Bram Moolenaar
Problem: Not checking for out-of-memory of autoload_name(). Solution: Check for NULL. (Dominique Pelle, closes #4846)
2019-08-20patch 8.1.1891: functions used in one file are globalv8.1.1891Bram Moolenaar
Problem: Functions used in one file are global. Solution: Add "static". (Yegappan Lakshmanan, closes #4840)
2019-08-18patch 8.1.1887: the +cmdline_compl feature is not in the tiny versionv8.1.1887Bram Moolenaar
Problem: The +cmdline_compl feature is not in the tiny version. Solution: Graduate the +cmdline_compl feature.
2019-08-17patch 8.1.1878: negative float before method not parsed correctlyv8.1.1878Bram Moolenaar
Problem: Negative float before method not parsed correctly. Solution: Apply "!" and "-" in front of expression before using ->.
2019-08-09patch 8.1.1834: cannot use a lambda as a methodv8.1.1834Bram Moolenaar
Problem: Cannot use a lambda as a method. Solution: Implement ->{lambda}(). (closes #4768)
2019-08-08patch 8.1.1828: not strict enough checking syntax of method invocationv8.1.1828Bram Moolenaar
Problem: Not strict enough checking syntax of method invocation. Solution: Check there is no white space inside ->method(.
2019-08-05patch 8.1.1820: using expr->FuncRef() does not workv8.1.1820Bram Moolenaar
Problem: Using expr->FuncRef() does not work. Solution: Make FuncRef work as a method.
2019-08-04patch 8.1.1816: cannot use a user defined function as a methodv8.1.1816Bram Moolenaar
Problem: Cannot use a user defined function as a method. Solution: Pass the base as the first argument to the user defined function after "->". (partly by FUJIWARA Takuya)
2019-08-03patch 8.1.1803: all builtin functions are globalv8.1.1803Bram Moolenaar
Problem: All builtin functions are global. Solution: Add the method call operator ->. Implemented for a limited number of functions.
2019-08-03patch 8.1.1800: function call functions have too many argumentsv8.1.1800Bram Moolenaar
Problem: Function call functions have too many arguments. Solution: Pass values in a funcexe_T struct.
2019-07-28patch 8.1.1766: code for writing session file is spread outv8.1.1766Bram Moolenaar
Problem: Code for writing session file is spread out. Solution: Put it in one file. (Yegappan Lakshmanan, closes #4728)
2019-07-21patch 8.1.1727: code for viminfo support is spread outv8.1.1727Bram Moolenaar
Problem: Code for viminfo support is spread out. Solution: Move to code to viminfo.c. (Yegappan Lakshmanan, closes #4686)
2019-07-21patch 8.1.1723: heredoc assignment has no room for new featuresv8.1.1723Bram Moolenaar
Problem: Heredoc assignment has no room for new features. (FUJIWARA Takuya) Solution: Require the marker does not start with a lower case character. (closes #4705)
2019-07-20patch 8.1.1722: error when scriptversion is 2 a making a dictionary accessv8.1.1722Bram Moolenaar
Problem: Error when scriptversion is 2 a making a dictionary access. Solution: Parse the subscript even when not evaluating the sub-expression. (closes #4704)
2019-07-16patch 8.1.1705: using ~{} for a literal dict is not nicev8.1.1705Bram Moolenaar
Problem: Using ~{} for a literal dict is not nice. Solution: Use #{} instead.
2019-07-14patch 8.1.1692: using *{} for literal dict is not backwards compatiblev8.1.1692Bram Moolenaar
Problem: Using *{} for literal dict is not backwards compatible. (Yasuhiro Matsumoto) Solution: Use ~{} instead.
2019-07-14patch 8.1.1687: the evalfunc.c file is too bigv8.1.1687Bram Moolenaar
Problem: The evalfunc.c file is too big. Solution: Move testing support to a separate file.
2019-07-14patch 8.1.1686: "*" of "*{" is recognized as multipy operatorv8.1.1686Bram Moolenaar
Problem: "*" of "*{" is recognized as multipy operator. (Yasuhiro Matsumoto) Solution: Check for the "{".
2019-07-13patch 8.1.1683: dictionary with string keys is longer than neededv8.1.1683Bram Moolenaar
Problem: Dictionary with string keys is longer than needed. Solution: Use *{key: val} for literaly keys.
2019-07-10patch 8.1.1660: assert_fails() does not fail inside try/catchv8.1.1660Bram Moolenaar
Problem: Assert_fails() does not fail inside try/catch. Solution: Set trylevel to zero. (Ozaki Kiichi, closes #4639)
2019-07-05patch 8.1.1639: changing an autoload name into a file name is inefficientv8.1.1639Bram Moolenaar
Problem: Changing an autoload name into a script file name is inefficient. Solution: Remember the last replaced #. (Ozaki Kiichi, closes #4618)
2019-06-25patch 8.1.1588: in :let-heredoc line continuation is recognizedv8.1.1588Bram Moolenaar
Problem: In :let-heredoc line continuation is recognized. Solution: Do not consume line continuation. (Ozaki Kiichi, closes #4580)
2019-06-24patch 8.1.1585: :let-heredoc does not trim enoughv8.1.1585Bram Moolenaar
Problem: :let-heredoc does not trim enough. Solution: Trim indent from the contents based on the indent of the first line. Use let-heredoc in more tests.
2019-06-23patch 8.1.1583: set_ref_in_list() only sets ref in itemsv8.1.1583Bram Moolenaar
Problem: Set_ref_in_list() only sets ref in items. Solution: Rename to set_ref_in_list_items() to avoid confusion.
2019-06-20patch 8.1.1575: callbacks may be garbage collectedv8.1.1575Bram Moolenaar
Problem: Callbacks may be garbage collected. Solution: Set reference in callbacks. (Ozaki Kiichi, closes #4564)
2019-06-15patch 8.1.1542: an OptionSet autocommand does not get enough infov8.1.1542Bram Moolenaar
Problem: An OptionSet autocommand does not get enough info. Solution: Add v:option_command, v:option_oldlocal and v:option_oldglobal. (Latrice Wilgus, closes #4118)
2019-06-15patch 8.1.1539: not easy to define a variable and lock itv8.1.1539Bram Moolenaar
Problem: Not easy to define a variable and lock it. Solution: Add ":const".
2019-06-14patch 8.1.1526: no numerical value for the patchlevelv8.1.1526Bram Moolenaar
Problem: No numerical value for the patchlevel. Solution: Add v:versionlong.
2019-06-07patch 8.1.1491: when skipping over code a function call may cause troublev8.1.1491Bram Moolenaar
Problem: When skipping over code after an exception was thrown expression evaluation is aborted after a function call. (Ingo Karkat) Solution: Do not fail if not executing the expression. (closes #4507)
2019-06-06patch 8.1.1485: double free when garbage_collect() is used in autocommandv8.1.1485Bram Moolenaar
Problem: Double free when garbage_collect() is used in autocommand. Solution: Have garbage collection also set the copyID in funccal_stack.
2019-06-06patch 8.1.1484: some tests are slowv8.1.1484Bram Moolenaar
Problem: Some tests are slow. Solution: Add timing to the test messages. Fix double free when quitting in VimLeavePre autocmd.
2019-06-01patch 8.1.1437: code to handle callbacks is duplicatedv8.1.1437Bram Moolenaar
Problem: Code to handle callbacks is duplicated. Solution: Add callback_T and functions to deal with it.
2019-05-28patch 8.1.1414: alloc() returning "char_u *" causes a lot of type castsv8.1.1414Bram Moolenaar
Problem: Alloc() returning "char_u *" causes a lot of type casts. Solution: Have it return "void *". (Mike Williams) Define ALLOC_ONE() to check the simple allocations.
2019-05-26patch 8.1.1400: using global pointer for tab-local popups is clumsyv8.1.1400Bram Moolenaar
Problem: Using global pointer for tab-local popups is clumsy. Solution: Use the pointer in tabpage_T.