summaryrefslogtreecommitdiff
path: root/src/vim9instr.c
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.2.5018: Vim9: some code is not covered by testsv8.2.5018Bram Moolenaar2022-05-251-123/+98
| | | | | Problem: Vim9: some code is not covered by tests. Solution: Delete dead code.
* patch 8.2.4973: Vim9: type error for list unpack mentions argumentv8.2.4973Bram Moolenaar2022-05-171-1/+3
| | | | | Problem: Vim9: type error for list unpack mentions argument. Solution: Mention variable. (close #10435)
* patch 8.2.4930: interpolated string expression requires escapingv8.2.4930Bram Moolenaar2022-05-101-0/+2
| | | | | Problem: Interpolated string expression requires escaping. Solution: Do not require escaping in the expression.
* patch 8.2.4863: accessing freed memory in test without the +channel featurev8.2.4863Bram Moolenaar2022-05-041-0/+14
| | | | | | | Problem: Accessing freed memory in test without the +channel feature. (Dominique Pellé) Solution: Do not generted PUSHCHANNEL or PUSHJOB if they are not implemented. (closes #10350)
* patch 8.2.4834: Vim9: some lines not covered by testsv8.2.4834Bram Moolenaar2022-04-271-1/+0
| | | | | Problem: Vim9: some lines not covered by tests. Solution: Add a few more tests. Remove dead code.
* patch 8.2.4823: concat more than 2 strings in :def function is inefficientv8.2.4823LemonBoy2022-04-251-0/+27
| | | | | | Problem: Concatenating more than 2 strings in a :def function is inefficient. Solution: Add a count to the CONCAT instruction. (closes #10276)
* patch 8.2.4657: errors for functions are sometimes hard to readv8.2.4657Bram Moolenaar2022-03-311-3/+3
| | | | | Problem: Errors for functions are sometimes hard to read. Solution: Use printable_func_name() in more places.
* patch 8.2.4656: Vim9: can't use item from "import autoload" with autoload dirv8.2.4656Bram Moolenaar2022-03-311-1/+3
| | | | | | | Problem: Vim9: can't use items from "import autoload" with autoload directory name. Solution: Let sn_autoload_prefix overrule sn_import_autoload. (closes #10054)
* patch 8.2.4650: "import autoload" only works with using 'runtimepath'v8.2.4650Bram Moolenaar2022-03-301-22/+53
| | | | | Problem: "import autoload" only works with using 'runtimepath'. Solution: Also support a relative and absolute file name.
* patch 8.2.4634: Vim9: cannot initialize a variable to null_listv8.2.4634Bram Moolenaar2022-03-271-7/+9
| | | | | | Problem: Vim9: cannot initialize a variable to null_list. Solution: Give negative count to NEWLIST. (closes #10027) Also fix inconsistencies in comparing with null values.
* patch 8.2.4612: Vim9: cannot use a recursive call in a nested functionv8.2.4612Bram Moolenaar2022-03-231-1/+4
| | | | | | Problem: Vim9: cannot use a recursive call in a nested function. (Sergey Vlasov) Solution: Define the funcref before compiling the function. (closes #9989)
* patch 8.2.4602: Vim9: not enough test coverage for executing :def functionv8.2.4602Bram Moolenaar2022-03-201-24/+8
| | | | | Problem: Vim9: not enough test coverage for executing :def function. Solution: Add a few more tests. Fix uncovered problem. Remove dead code.
* patch 8.2.4576: Vim9: error for comparing with null can be annoyingv8.2.4576Bram Moolenaar2022-03-151-14/+2
| | | | | Problem: Vim9: error for comparing with null can be annoying. Solution: Allow comparing anything with null. (closes #9948)
* patch 8.2.4575: Vim9: test for profiling still failsv8.2.4575Bram Moolenaar2022-03-151-4/+8
| | | | | | | Problem: Vim9: test for profiling still fails. Solution: Update flags for profiling and breakpoints when obtaining the compile type. Do not set the FC_CLOSURE flag for a toplevel function.
* patch 8.2.4539: when comparing special v:none and v:null are handled the samev8.2.4539Bram Moolenaar2022-03-101-31/+50
| | | | | | | Problem: When comparing special v:none and v:null are handled the same when compiling. Solution: Pass more information so that v:none can be handled differently at compile time. (issue #9923)
* patch 8.2.4529: Vim9: comparing partial with function failsv8.2.4529Bram Moolenaar2022-03-081-1/+3
| | | | | | Problem: Vim9: comparing partial with function fails. Solution: Support this comparison. Avoid a crash. (closes #9909) Add more test cases.
* patch 8.2.4526: Vim9: cannot set variables to a null valuev8.2.4526Bram Moolenaar2022-03-081-1/+36
| | | | | Problem: Vim9: cannot set variables to a null value. Solution: Add null_list, null_job, etc.
* patch 8.2.4487: Vim9: cannot compare with v:nullv8.2.4487Bram Moolenaar2022-03-011-1/+20
| | | | | Problem: Vim9: cannot compare with v:null. Solution: Allow comparing anything with v:null. (closes #9866)
* patch 8.2.4311: Vim9: changing script variable type not caught compile timev8.2.4311Bram Moolenaar2022-02-061-1/+1
| | | | | Problem: Vim9: changing script variable type not caught at compile time. Solution: Set the declared type.
* patch 8.2.4310: Vim9: constant list and dict get a declaration typev8.2.4310Bram Moolenaar2022-02-061-8/+4
| | | | | | | Problem: Vim9: constant list and dict get a declaration type other than "any". Solution: A constant list and dict have a declared member type "any". (closes #9701)
* patch 8.2.4279: Vim9: cannot change item type with map() after range()v8.2.4279Bram Moolenaar2022-02-011-4/+8
| | | | | | Problem: Vim9: cannot change item type with map() after range(). Solution: Split the return type in current type and declared type. (closes #9665)
* patch 8.2.4231: Vim9: map() gives type error when type was not declaredv8.2.4231Bram Moolenaar2022-01-271-3/+3
| | | | | | Problem: Vim9: map() gives type error when type was not declared. Solution: Only check the type when it was declared, like extend() does. (closes #9635)
* patch 8.2.4216: Vim9: cannot use a function from an autoload import directlyv8.2.4216Bram Moolenaar2022-01-251-0/+18
| | | | | | Problem: Vim9: cannot use a function from an autoload import directly. Solution: Add the AUTOLOAD instruction to figure out at runtime. (closes #9620)
* patch 8.2.4202: Vim9: cannot export function that exists globallyv8.2.4202Bram Moolenaar2022-01-241-1/+1
| | | | | | Problem: Vim9: cannot export function that exists globally. Solution: When checking if a function already exists only check for script-local functions. (closes #9615)
* patch 8.2.4103: Vim9: variable declared in for loop not initialzedv8.2.4103Bram Moolenaar2022-01-151-1/+21
| | | | | Problem: Vim9: variable declared in for loop not initialzed. Solution: Always initialze the variable. (closes #9535)
* patch 8.2.4086: "cctx" argument of find_func_even_dead() is unusedv8.2.4086Bram Moolenaar2022-01-131-1/+1
| | | | | Problem: "cctx" argument of find_func_even_dead() is unused. Solution: Remove the argument.
* patch 8.2.4072: Vim9: compiling function fails when autoload is not loadedv8.2.4072Bram Moolenaar2022-01-121-2/+2
| | | | | | Problem: Vim9: compiling function fails when autoload script is not loaded yet. Solution: Depend on runtime loading.
* patch 8.2.4045: some global functions are only used in one filev8.2.4045Yegappan Lakshmanan2022-01-081-3/+3
| | | | | Problem: Some global functions are only used in one file. Solution: Make the functions static. (Yegappan Lakshmanan, closes #9492)
* patch 8.2.3996: Vim9: type checking lacks information about declared typev8.2.3996Bram Moolenaar2022-01-041-151/+111
| | | | | | | 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.
* patch 8.2.3967: error messages are spread outv8.2.3967Bram Moolenaar2022-01-011-1/+1
| | | | | Problem: Error messages are spread out. Solution: Move more errors to errors.h.
* patch 8.2.3893: Vim9: many local variables are initialized with an instructionv8.2.3893Bram Moolenaar2021-12-251-6/+14
| | | | | Problem: Vim9: many local variables are initialized with an instruction. Solution: Initialize local variables to zero to avoid the instructions.
* patch 8.2.3890: Vim9: type check for using v: variables is basicv8.2.3890Bram Moolenaar2021-12-241-2/+1
| | | | | Problem: Vim9: type check for using v: variables is basic. Solution: Specify a more precise type.
* patch 8.2.3866: Vim9: type checking global variables is inconsistentv8.2.3866Bram Moolenaar2021-12-211-4/+9
| | | | | Problem: Vim9: type checking global variables is inconsistent. Solution: Use the "unknown" type in more places.
* patch 8.2.3865: Vim9: compiler complains about using "try" as a struct memberv8.2.3865Bram Moolenaar2021-12-211-1/+1
| | | | | Problem: Vim9: compiler complains about using "try" as a struct member. Solution: Rename "try" to "tryref".
* patch 8.2.3860: Vim9: codecov struggles with the file sizev8.2.3860Bram Moolenaar2021-12-201-0/+2208
Problem: Vim9: codecov struggles with the file size. Solution: Split vim9compile.c into four files.