summaryrefslogtreecommitdiffstats
path: root/src/dict.c
AgeCommit message (Collapse)Author
2022-06-14patch 8.2.5089: some functions return a different value on failurev8.2.5089Yegappan Lakshmanan
Problem: Some functions return a different value on failure. Solution: Initialize the return value earlier. (Yegappan Lakshmanan, closes #10568)
2022-05-10patch 8.2.4930: interpolated string expression requires escapingv8.2.4930Bram Moolenaar
Problem: Interpolated string expression requires escaping. Solution: Do not require escaping in the expression.
2022-04-04patch 8.2.4683: verbose check with dict_find() to see if a key is presentv8.2.4683Yegappan Lakshmanan
Problem: Verbose check with dict_find() to see if a key is present. Solution: Add dict_has_key(). (Yegappan Lakshmanan, closes #10074)
2022-02-05patch 8.2.4301: Vim9: type error for copy of dictv8.2.4301Bram Moolenaar
Problem: Vim9: type error for copy of dict. Solution: Do not use dict<any> but no type. (closes #9696)
2022-02-02patch 8.2.4286: Vim9: strict type checking after copy() and deepcopy()v8.2.4286Bram Moolenaar
Problem: Vim9: strict type checking after copy() and deepcopy(). Solution: Allow type to change after making a copy. (closes #9644)
2022-01-08patch 8.2.4043: using int for second argument of ga_init2()v8.2.4043Bram Moolenaar
Problem: Using int for second argument of ga_init2(). Solution: Remove unnessary type cast (int) when using sizeof().
2022-01-04patch 8.2.4005: error messages are spread outv8.2.4005Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more error messages to errors.h.
2022-01-04patch 8.2.3997: Vim9: not enough testing for extend() and map()v8.2.3997Bram Moolenaar
Problem: Vim9: not enough testing for extend() and map(). Solution: Add more test cases. Fix uncovered problems. Remove unused type fields.
2022-01-04patch 8.2.3996: Vim9: type checking lacks information about declared typev8.2.3996Bram Moolenaar
Problem: Vim9: type checking for list and dict lacks information about declared type. Solution: Add dv_decl_type and lv_decl_type. Refactor the type stack to store two types in each entry.
2022-01-01patch 8.2.3970: error messages are spread outv8.2.3970Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more errors to errors.h.
2022-01-01patch 8.2.3967: error messages are spread outv8.2.3967Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more errors to errors.h.
2021-12-31patch 8.2.3961: error messages are spread outv8.2.3961Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more errors to errors.h.
2021-12-22patch 8.2.3875: gcc complains about buffer overrunv8.2.3875Bram Moolenaar
Problem: gcc complains about buffer overrun. Solution: Use mch_memmove() instead of STRCPY(). (John Marriott)
2021-12-22patch 8.2.3871: list.c contains code for dict and blobv8.2.3871Yegappan Lakshmanan
Problem: List.c contains code for dict and blob. Solution: Refactor to put code where it belongs. (Yegappan Lakshmanan, closes #9386)
2021-12-16patch 8.2.3830: error messages are spread outv8.2.3830Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more error messages to errors.h.
2021-11-30patch 8.2.3702: first key in dict is seen as curly expression and failsv8.2.3702Bram Moolenaar
Problem: First key in dict is seen as curly expression and fails. Solution: Ignore failure of curly expression. (closes #9247)
2021-11-22patch 8.2.3650: Vim9: for loop variable can be a list memberv8.2.3650Bram Moolenaar
Problem: Vim9: for loop variable can be a list member. Solution: Check for valid variable name. (closes #9179)
2021-09-06patch 8.2.3407: using uninitialized memory with "let g:['bar'] = 2"v8.2.3407Bram Moolenaar
Problem: Using uninitialized memory with "let g:['bar'] = 2". Solution: Initialize v_type of a new dict item.
2021-08-12patch 8.2.3335: Vim9: not enough tests run with Vim9v8.2.3335Bram Moolenaar
Problem: Vim9: not enough tests run with Vim9. Solution: Run a few more tests in Vim9 script and :def function. Fix that items(), keys() and values9) return zero for a NULL dict. Make join() return an empty string for a NULL list. Make sort() return an empty list for a NULL list.
2021-08-09patch 8.2.3320: some local functions are not staticv8.2.3320Yegappan Lakshmanan
Problem: Some local functions are not static. Solution: Add "static". Move snprintf() related code to strings.c. (Yegappan Lakshmanan, closes #8734)
2021-07-27patch 8.2.3229: Vim9: runtime and compile time type checks are not the samev8.2.3229Yegappan Lakshmanan
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)
2021-07-23patch 8.2.3206: Vim9: argument types are not checked at compile timev8.2.3206Yegappan Lakshmanan
Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks. (Yegappan Lakshmanan, closes #8611)
2021-07-22patch 8.2.3200: Vim9: hard to guess where a type error is givenv8.2.3200Bram Moolenaar
Problem: Vim9: hard to guess where a type error is given. Solution: Add the function name where possible. (closes #8608)
2021-07-20patch 8.2.3188: Vim9: argument types are not checked at compile timev8.2.3188Yegappan Lakshmanan
Problem: Vim9: argument types are not checked at compile time. Solution: Add several more type checks, also at runtime. (Yegappan Lakshmanan, closes #8587)
2021-06-02patch 8.2.2921: E704 for script local variable is not backwards compatiblev8.2.2921Bram Moolenaar
Problem: E704 for script local variable is not backwards compatible. (Yasuhiro Matsumoto) Solution: Only give the error in Vim9 script. Also check for function-local variable.
2021-06-01patch 8.2.2920: still a way to shadow a builtin functionv8.2.2920Bram Moolenaar
Problem: Still a way to shadow a builtin function. (Yasuhiro Matsumoto) Solution: Check the key when using extend(). (issue #8302)
2021-02-11patch 8.2.2501: not always clear where an error is reportedv8.2.2501Bram Moolenaar
Problem: Not always clear where an error is reported. Solution: Add the where_T structure and pass it around. (closes #7796)
2021-02-07patch 8.2.2486: Vim9: some errors for white space do not show contextv8.2.2486Bram Moolenaar
Problem: Vim9: some errors for white space do not show context. Solution: Include the text at the error.
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)