summaryrefslogtreecommitdiff
path: root/src/vim9.h
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.2.3057: Vim9: debugger test fails with normal features and +terminalv8.2.3057Bram Moolenaar2021-06-261-1/+1
| | | | | | Problem: Vim9: debugger test fails with normal features and +terminal. (Dominique Pellé) Solution: Adjust the INSTRUCTIONS macro. (closes #8460)
* patch 8.2.3039: Vim9: breakpoint at a comment line does not workv8.2.3039Bram Moolenaar2021-06-231-2/+8
| | | | | | Problem: Vim9: breakpoint at a comment line does not work. Solution: Add the comment line number to the debug instruction. (closes #8429)
* patch 8.2.3029: Vim9: crash when using operator and list unpack assignmentv8.2.3029Bram Moolenaar2021-06-211-0/+7
| | | | | | Problem: Vim9: crash when using operator and list unpack assignment. (Naohiro Ono) Solution: Get variable value before operation. (closes #8416)
* patch 8.2.3026: Vim9: cannot set breakpoint in compiled functionv8.2.3026Bram Moolenaar2021-06-201-1/+1
| | | | | Problem: Vim9: cannot set breakpoint in compiled function. Solution: Check for breakpoint when calling a function.
* patch 8.2.3005: Vim9: using a void value does not give a proper error messagev8.2.3005Bram Moolenaar2021-06-151-1/+1
| | | | | Problem: Vim9: using a void value does not give a proper error message. Solution: Give a clear error message. (clodes #8387)
* patch 8.2.2996: Vim9: when debugging cannot inspect local variablesv8.2.2996Bram Moolenaar2021-06-141-1/+3
| | | | | Problem: Vim9: when debugging cannot inspect local variables. Solution: Make local variables available when debugging.
* patch 8.2.2988: Vim9: debugger test failsv8.2.2988Bram Moolenaar2021-06-131-3/+10
| | | | | Problem: Vim9: debugger test fails. Solution: Get the debugger instructions when needed.
* patch 8.2.2985: Vim9: a compiled function cannot be debuggedv8.2.2985Bram Moolenaar2021-06-131-0/+4
| | | | | Problem: Vim9: a compiled function cannot be debugged. Solution: Add initial debugging support.
* patch 8.2.2951: Vim9: cannot use heredoc for :python, :lua, etc.v8.2.2951Bram Moolenaar2021-06-061-0/+1
| | | | | | Problem: Vim9: cannot use heredoc in :def function for :python, :lua, etc. Solution: Concatenate the heredoc lines and pass them in the ISN_EXEC_SPLIT instruction.
* patch 8.2.2936: Vim9: converting number to bool uses wrong stack offsetv8.2.2936Bram Moolenaar2021-06-041-2/+16
| | | | | | Problem: Vim9: converting number to bool uses wrong stack offset. (Salman Halim) Solution: Include the offset in the 2BOOL command.
* patch 8.2.2861: Vim9: "legacy return" is not recognized as a return statementv8.2.2861Bram Moolenaar2021-05-171-0/+1
| | | | | Problem: Vim9: "legacy return" is not recognized as a return statement. Solution: Specifically check for a return command. (closes #8213)
* patch 8.2.2842: Vim9: skip argument to searchpair() is not compiledv8.2.2842Bram Moolenaar2021-05-071-0/+2
| | | | | Problem: Vim9: skip argument to searchpair() is not compiled. Solution: Add VAR_INSTR.
* patch 8.2.2834: Vim9: :cexpr does not work with local variablesv8.2.2834Bram Moolenaar2021-05-051-0/+16
| | | | | Problem: Vim9: :cexpr does not work with local variables. Solution: Compile :cexpr.
* patch 8.2.2812: Vim9: still crash when using substitute expressionv8.2.2812Bram Moolenaar2021-04-261-4/+6
| | | | | Problem: Vim9: still crash when using substitute expression. Solution: Put the instruction list in the stack frame. (closes #8154)
* patch 8.2.2785: Vim9: cannot redirect to local variablev8.2.2785Bram Moolenaar2021-04-191-0/+3
| | | | | Problem: Vim9: cannot redirect to local variable. Solution: Compile :redir when redirecting to a variable.
* patch 8.2.2784: Vim9: cannot use \=expr in :substitutev8.2.2784Bram Moolenaar2021-04-191-2/+13
| | | | | | Problem: Vim9: cannot use \=expr in :substitute. Solution: Compile the expression into instructions and execute them when invoked.
* patch 8.2.2757: Vim9: blob tests for legacy and Vim9 script are separatev8.2.2757Bram Moolenaar2021-04-121-0/+2
| | | | | Problem: Vim9: blob tests for legacy and Vim9 script are separate. Solution: Add CheckLegacyAndVim9Success(). Make blob index assign work.
* patch 8.2.2756: Vim9: blob index and slice not implemented yetv8.2.2756Bram Moolenaar2021-04-111-0/+2
| | | | | Problem: Vim9: blob index and slice not implemented yet. Solution: Implement blob index and slice.
* patch 8.2.2677: Vim9: cannot use only some of the default argumentsv8.2.2677Bram Moolenaar2021-03-291-0/+8
| | | | | | Problem: Vim9: cannot use only some of the default arguments. Solution: Use v:none to use default argument value. Remove uf_def_arg_idx[], use JUMP_IF_ARG_SET. (closes #6504)
* patch 8.2.2650: Vim9: command modifiers not handled in nested functionv8.2.2650Bram Moolenaar2021-03-241-2/+4
| | | | | Problem: Vim9: command modifiers not handled in nested function. Solution: Keep function-local info in a structure and save it on the stack.
* patch 8.2.2539: Vim9: return from finally block causes a hangv8.2.2539Bram Moolenaar2021-02-211-1/+8
| | | | | Problem: Vim9: return from finally block causes a hang. Solution: Store both the finally and endtry indexes. (closes #7885)
* patch 8.2.2533: Vim9: cannot use a range with :unletv8.2.2533Bram Moolenaar2021-02-201-0/+1
| | | | | Problem: Vim9: cannot use a range with :unlet. Solution: Implement ISN_UNLETRANGE.
* patch 8.2.2527: Vim9: lambda return type is not determined at script levelv8.2.2527Bram Moolenaar2021-02-171-2/+0
| | | | | Problem: Vim9: lambda return type is not determined at script level. Solution: Compile the lambda to get the return type. (closes #7843)
* patch 8.2.2506: Vim9: :continue does not work correctly in a :try blockv8.2.2506Bram Moolenaar2021-02-131-1/+9
| | | | | Problem: Vim9: :continue does not work correctly in a :try block Solution: Add the TRYCLEANUP instruction. (closes #7827)
* patch 8.2.2410: build failure without the +profiling featurev8.2.2410Bram Moolenaar2021-01-251-1/+1
| | | | | Problem: Build failure without the +profiling feature. Solution: Add dummy argument to macro.
* patch 8.2.2409: Vim9: profiling only works for one functionv8.2.2409Bram Moolenaar2021-01-251-0/+10
| | | | | | Problem: Vim9: profiling only works for one function. Solution: Select the right instructions when calling and returning. (closes #7743)
* patch 8.2.2401: build fails without +profiling featurev8.2.2401Bram Moolenaar2021-01-241-2/+4
| | | | | Problem: Build fails without +profiling feature. Solution: Add #ifdefs.
* patch 8.2.2400: Vim9: compiled functions are not profiledv8.2.2400Bram Moolenaar2021-01-241-1/+8
| | | | | | Problem: Vim9: compiled functions are not profiled. Solution: Add initial changes to profile compiled functions. Fix that a script-local function was hard to debug.
* patch 8.2.2390: Vim9: using positive offset is unexpectedv8.2.2390Bram Moolenaar2021-01-221-2/+2
| | | | | Problem: Vim9: using positive offset is unexpected. Solution: Use int8_T instead of char. (James McCoy)
* patch 8.2.2389: test failure on a few systemsv8.2.2389Bram Moolenaar2021-01-211-1/+1
| | | | | Problem: Test failure on a few systems. Solution: Avoid that "char" value is negative.
* patch 8.2.2387: runtime type check does not mention argument indexv8.2.2387Bram Moolenaar2021-01-211-1/+2
| | | | | Problem: Runtime type check does not mention argument index. Solution: Add ct_arg_idx. (closes #7720)
* patch 8.2.2322: Vim9: closure nested limiting to one levelv8.2.2322Bram Moolenaar2021-01-101-5/+8
| | | | | Problem: Vim9: closure nested limiting to one level. Solution: Add outer_T. Also make STOREOUTER work.
* patch 8.2.2321: Vim9: cannot nest closuresv8.2.2321Bram Moolenaar2021-01-101-2/+9
| | | | | | Problem: Vim9: cannot nest closures. Solution: Add the nesting level to ISN_LOADOUTER and ISN_STOREOUTER. (closes #7150, closes #7635)
* patch 8.2.2319: "exptype_T" can be read as "expected type"v8.2.2319Bram Moolenaar2021-01-091-3/+3
| | | | | Problem: "exptype_T" can be read as "expected type". Solution: Rename to "exprtype_T", expression type.
* patch 8.2.2314: Vim9: returning zero takes two instructionsv8.2.2314Bram Moolenaar2021-01-081-0/+1
| | | | | Problem: Vim9: returning zero takes two instructions. Solution: Add ISN_RETURN_ZERO.
* patch 8.2.2301: Vim9: cannot unlet a dict or list itemv8.2.2301Bram Moolenaar2021-01-041-0/+1
| | | | | Problem: Vim9: cannot unlet a dict or list item. Solution: Add ISN_UNLETINDEX. Refactor assignment code to use for unlet.
* patch 8.2.2273: build failurev8.2.2273Bram Moolenaar2021-01-021-1/+2
| | | | | Problem: Build failure. Solution: Add missing changes to header file.
* patch 8.2.2224: Vim9: crash if script reloaded with different variable typev8.2.2224Bram Moolenaar2020-12-261-0/+1
| | | | | Problem: Vim9: crash if script reloaded with different variable type. Solution: Check the type when accessing the variable.
* patch 8.2.2208: Vim9: after reloading a script variable index may be invalidv8.2.2208Bram Moolenaar2020-12-241-2/+9
| | | | | | Problem: Vim9: after reloading a script variable index may be invalid. Solution: When the sequence number doesn't match give an error for using a script-local variable from a compiled function. (closes #7547)
* patch 8.2.2188: Vim9: crash when calling global function from :def functionv8.2.2188Bram Moolenaar2020-12-221-0/+2
| | | | | | | Problem: Vim9: crash when calling global function from :def function. Solution: Set the outer context. Define the partial for the context on the original function. Use a refcount to keep track of which ufunc is using a dfunc. (closes #7525)
* patch 8.2.2179: Vim9: crash when indexing a dict with a numberv8.2.2179Bram Moolenaar2020-12-211-2/+3
| | | | | Problem: Vim9: crash when indexing a dict with a number. Solution: Add ISN_STOREINDEX. (closes #7513)
* patch 8.2.2162: Vim9: Cannot load or store autoload variablesv8.2.2162Bram Moolenaar2020-12-191-0/+2
| | | | | Problem: Vim9: Cannot load or store autoload variables. Solution: Add ISN_LOADAUTO and ISN_STOREAUTO. (closes #7485)
* patch 8.2.2160: various typosv8.2.2160Bram Moolenaar2020-12-181-1/+1
| | | | | Problem: Various typos. Solution: Fix spelling mistakes. (closes #7494)
* patch 8.2.2124: Vim9: a range cannot be computed at runtimev8.2.2124Bram Moolenaar2020-12-101-0/+6
| | | | | Problem: Vim9: a range cannot be computed at runtime. Solution: Add the ISN_RANGE instruction.
* patch 8.2.2034: Vim9: list unpack in for statement not compiled yetv8.2.2034Bram Moolenaar2020-11-231-0/+8
| | | | | Problem: Vim9: list unpack in for statement not compiled yet. Solution: Compile list unpack. (closes #7345)
* patch 8.2.2033: Vim9: :def without argument gives compilation errorv8.2.2033Bram Moolenaar2020-11-221-0/+1
| | | | | Problem: Vim9: :def without argument gives compilation error. Solution: Add the DEF instruction. (closes #7344)
* patch 8.2.1900: Vim9: command modifiers do not workv8.2.1900Bram Moolenaar2020-10-241-2/+8
| | | | | Problem: Vim9: command modifiers do not work. Solution: Make most command modifiers work.
* patch 8.2.1894: Vim9: command modifiers are not supportedv8.2.1894Bram Moolenaar2020-10-231-0/+3
| | | | | Problem: Vim9: command modifiers are not supported. Solution: Support "silent" and "silent!".
* patch 8.2.1867: Vim9: argument to add() not checked for blobv8.2.1867Bram Moolenaar2020-10-191-0/+1
| | | | | Problem: Vim9: argument to add() not checked for blob. Solution: Add the BLOBAPPEND instruction.
* patch 8.2.1865: Vim9: add() does not check type of argumentv8.2.1865Bram Moolenaar2020-10-191-2/+3
| | | | | Problem: Vim9: add() does not check type of argument. Solution: Inline the add() call. (closes #7160)