summaryrefslogtreecommitdiffstats
path: root/src/dict.c
AgeCommit message (Collapse)Author
2021-02-07patch 8.2.2480: Vim9: some errors for white space do not show contextv8.2.2480Bram Moolenaar
Problem: Vim9: some errors for white space do not show context. Solution: Include the text at the error.
2021-02-03patch 8.2.2455: Vim9: key type for literal dict and indexing is inconsistentv8.2.2455Bram Moolenaar
Problem: Vim9: key type that can be used for literal dict and indexing is inconsistent. Solution: Allow using number and bool as key for a literal dict. (#7771)
2021-01-22patch 8.2.2393: Vim9: error message when script line starts with "[{"v8.2.2393Bram Moolenaar
Problem: Vim9: error message when script line starts with "[{". Solution: Do not give an error for checking for end of list.
2021-01-02patch 8.2.2272: Vim9: extend() can violate the type of a variablev8.2.2272Bram Moolenaar
Problem: Vim9: extend() can violate the type of a variable. Solution: Add the type to the dictionary or list and check items against it. (closes #7593)
2020-12-19patch 8.2.2162: Vim9: Cannot load or store autoload variablesv8.2.2162Bram Moolenaar
Problem: Vim9: Cannot load or store autoload variables. Solution: Add ISN_LOADAUTO and ISN_STOREAUTO. (closes #7485)
2020-12-15patch 8.2.2146: Vim9: automatic conversion of number to string for dict keyv8.2.2146Bram Moolenaar
Problem: Vim9: automatic conversion of number to string for dict key. Solution: Do not convert number to string. (closes #7474)
2020-12-06patch 8.2.2101: Vim9: memory leak when literal dict has an errorv8.2.2101Bram Moolenaar
Problem: Vim9: memory leak when literal dict has an error and when an expression is not complete. Solution: Clear the typval and the growarray.
2020-12-04patch 8.2.2090: Vim9: dict does not accept a key in quotesv8.2.2090Bram Moolenaar
Problem: Vim9: dict does not accept a key in quotes. Solution: Recognize a key in single or double quotes.
2020-12-02patch 8.2.2082: Vim9: can still use the depricated #{} dict syntaxv8.2.2082Bram Moolenaar
Problem: Vim9: can still use the depricated #{} dict syntax. Solution: Remove support for #{} in Vim9 script. (closes #7406, closes #7405)
2020-11-19patch 8.2.2017: missing part of the dict changev8.2.2017Bram Moolenaar
Problem: Missing part of the dict change. Solution: Also change the script level dict.
2020-11-05patch 8.2.1961: various comments can be improvedv8.2.1961Bram Moolenaar
Problem: Various comments can be improved. Solution: Various comment adjustments.
2020-10-22patch 8.2.1889: Vim9: errornous error for missing white space after {}v8.2.1889Bram Moolenaar
Problem: Vim9: errornous error for missing white space after {}. Solution: Don't skip over white space after {}. (issue #7167)
2020-10-18patch 8.2.1861: Vim9: no specific error when parsing lambda failsv8.2.1861Bram Moolenaar
Problem: Vim9: no specific error when parsing lambda fails. Solution: Also give syntax errors when not evaluating. (closes #7154)
2020-10-02patch 8.2.1785: compiler warning for strcp() out of boundsv8.2.1785Bram Moolenaar
Problem: Compiler warning for strcp() out of bounds. (Christian Brabandt) Solution: use memmove() instead.
2020-09-16patch 8.2.1698: cannot lock a variable in legacy Vim script like in Vim9v8.2.1698Bram Moolenaar
Problem: Cannot lock a variable in legacy Vim script like in Vim9. Solution: Make ":lockvar 0" work.
2020-08-21patch 8.2.1504: Vim9: white space checks are only done for a :def functionv8.2.1504Bram Moolenaar
Problem: Vim9: white space checks are only done for a :def function. Solution: Also do checks at the script level. Adjust the name of a few error messages.
2020-08-18patch 8.2.1478: Vim9: cannot use "true" for some popup optionsv8.2.1478Bram Moolenaar
Problem: Vim9: cannot use "true" for some popup options. Solution: Add dict_get_bool(). (closes #6725)
2020-08-13patch 8.2.1444: error messages are spread out and names can be confusingv8.2.1444Bram Moolenaar
Problem: Error messages are spread out and names can be confusing. Solution: Start moving error messages to a separate file and use clear names.
2020-08-12patch 8.2.1431: Vim9: no error for white space before comma in dictv8.2.1431Bram Moolenaar
Problem: Vim9: no error for white space before comma in dict. Solution: Check for extra white space. (closes #6674)
2020-08-12patch 8.2.1430: Vim9: error for missing comma instead of extra white spacev8.2.1430Bram Moolenaar
Problem: Vim9: error for missing comma instead of extra white space. Solution: Check if comma can be found after white space. (closes #6668) Also check for extra white space in literal dict. (closes #6670)
2020-08-08patch 8.2.1395: Vim9: no error if declaring a funcref with lower case letterv8.2.1395Bram Moolenaar
Problem: Vim9: no error if declaring a funcref with a lower case letter. Solution: Check the name after the type is inferred. Fix confusing name.
2020-08-06patch 8.2.1379: curly braces expression ending in " }" does not workv8.2.1379Bram Moolenaar
Problem: Curly braces expression ending in " }" does not work. Solution: Skip over white space when checking for "}". (closes #6634)
2020-07-30patch 8.2.1328: no space allowed before comma in listv8.2.1328Bram Moolenaar
Problem: No space allowed before comma in list. Solution: Legacy Vim script allows it. (closes #6577)
2020-07-30patch 8.2.1326: Vim9: skipping over white space after listv8.2.1326Bram Moolenaar
Problem: Vim9: skipping over white space after list. Solution: Do not skip white space, a following [] would be misinterpreted. (closes #6552) Fix a few side effects.
2020-07-12patch 8.2.1190: Vim9: checking for Vim9 syntax is spread outv8.2.1190Bram Moolenaar
Problem: Vim9: checking for Vim9 syntax is spread out. Solution: Use in_vim9script().
2020-07-04patch 8.2.1125: Vim9: double quote can be a string or a commentv8.2.1125Bram Moolenaar
Problem: Vim9: double quote can be a string or a comment. Solution: Only support comments starting with # to avoid confusion.
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-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.1070: Vim9: leaking memory when lacking white space in dictv8.2.1070Bram Moolenaar
Problem: Vim9: leaking memory when lacking white space in dict. Solution: Clear the typval.
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-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-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-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-10patch 8.2.0729: Vim9: When reloading a script variables are not clearedv8.2.0729Bram Moolenaar
Problem: Vim9: When reloading a script variables are not cleared. Solution: When sourcing a script again clear all script-local variables.
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-03-28patch 8.2.0467: Vim9: some errors are not testedv8.2.0467Bram Moolenaar
Problem: Vim9: some errors are not tested Solution: Add more tests. Fix that Vim9 script flag is not reset.
2020-01-26patch 8.2.0149: maintaining a Vim9 branch separately is more workv8.2.0149Bram Moolenaar
Problem: Maintaining a Vim9 branch separately is more work. Solution: Merge the Vim9 script changes.
2020-01-11patch 8.2.0111: VAR_SPECIAL is also used for booleansv8.2.0111Bram Moolenaar
Problem: VAR_SPECIAL is also used for booleans. Solution: Add VAR_BOOL for better type checking.
2020-01-04patch 8.2.0086: build error for small versionv8.2.0086Bram Moolenaar
Problem: Build error for small version. (Tony Mechelynck) Solution: Only use "user_data" with the +eval feature. Remove unused variable.
2020-01-04patch 8.2.0084: complete item "user_data" can only be a stringv8.2.0084Bram Moolenaar
Problem: Complete item "user_data" can only be a string. Solution: Accept any type of variable. (closes #5412)
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-09-28patch 8.1.2095: leaking memory when getting item from dictv8.1.2095Bram Moolenaar
Problem: Leaking memory when getting item from dict. Solution: Also free the key when not evaluating.
2019-08-30patch 8.1.1949: cannot scroll a popup window to the very bottomv8.1.1949Bram Moolenaar
Problem: Cannot scroll a popup window to the very bottom. Solution: Scroll to the bottom when the "firstline" property was set to -1. (closes #4577) Allow resetting min/max width/height.
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-07patch 8.1.1825: allocating more memory than needed for extended structsv8.1.1825Bram Moolenaar
Problem: Allocating more memory than needed for extended structs. Solution: Use offsetof() instead of sizeof(). (Dominique Pelle, closes #4785)
2019-07-27patch 8.1.1763: evalfunc.c is still too bigv8.1.1763Bram Moolenaar
Problem: Evalfunc.c is still too big. Solution: Move dict and list functions to a better place.
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-06-22patch 8.1.1579: dict and list could be GC'ed while displaying errorv8.1.1579Bram Moolenaar
Problem: Dict and list could be GC'ed while displaying error in a timer. (Yasuhiro Matsumoto) Solution: Block garbage collection when executing a timer. Add test_garbagecollect_soon(). Add "no_wait_return" to test_override(). (closes #4571)
2019-06-16patch 8.1.1561: popup_setoptions() is not implemented yetv8.1.1561Bram Moolenaar
Problem: Popup_setoptions() is not implemented yet. Solution: Implement popup_setoptions(). Also add more fields to popup_getoptions().
2019-06-02patch 8.1.1452: line and col property of popup windows not properly checkedv8.1.1452Bram Moolenaar
Problem: Line and col property of popup windows not properly checked. Solution: Check for "+" or "-" sign.