summaryrefslogtreecommitdiffstats
path: root/src/ex_eval.c
AgeCommit message (Collapse)Author
2023-10-21patch 9.0.2059: outstanding exceptions may be skippedv9.0.2059Yegappan Lakshmanan
Problem: outstanding exceptions may be skipped Solution: When restoring exception state, process remaining outstanding exceptions closes: #13386 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-10-19patch 9.0.2050: Vim9: crash with deferred function call and exceptionv9.0.2050Yegappan Lakshmanan
Problem: Vim9: crash with deferred function call and exception Solution: Save and restore exception state Crash when a deferred function is called after an exception and another exception is thrown closes: #13376 closes: #13377 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2022-11-12patch 9.0.0869: bogus error when string used after :elseifv9.0.0869Bram Moolenaar
Problem: Bogus error when string used after :elseif. Solution: Do not consider a double quote the start of a comment. (closes #11534)
2022-10-01patch 9.0.0634: evaluating "expr" options has more overhead than neededv9.0.0634Bram Moolenaar
Problem: Evaluating "expr" options has more overhead than needed. Solution: Use call_simple_func() for 'foldtext', 'includeexpr', 'printexpr', "expr" of 'spellsuggest', 'diffexpr', 'patchexpr', 'balloonexpr', 'formatexpr', 'indentexpr' and 'charconvert'.
2022-09-24patch 9.0.0577: buffer underflow with unexpected :finallyv9.0.0577Bram Moolenaar
Problem: Buffer underflow with unexpected :finally. Solution: Check CSF_TRY can be found.
2022-09-21patch 9.0.0535: closure gets wrong value in for loop with two loop variablesv9.0.0535Bram Moolenaar
Problem: Closure gets wrong value in for loop with two loop variables. Solution: Correctly compute the number of loop variables to clear.
2022-09-14patch 9.0.0460: loop variable can't be foundv9.0.0460Bram Moolenaar
Problem: Loop variable can't be found. Solution: Adjust block_id of the loop variable each round.
2022-09-13patch 9.0.0459: Vim9: block in for loop doesn't behave like a code blockv9.0.0459Bram Moolenaar
Problem: Vim9: block in for loop doesn't behave like a code block. Solution: Use a new block ID for each loop at the script level.
2022-09-04patch 9.0.0373: Coverity warns for NULL check and unused return valuev9.0.0373Bram Moolenaar
Problem: Coverity warns for NULL check and unused return value. Solution: Remove the NULL check, it was already checked earlier. Add (void) to ignore the return value.
2022-05-17patch 8.2.4970: "eval 123" gives an error, "eval 'abc'" does notv8.2.4970Bram Moolenaar
Problem: "eval 123" gives an error, "eval 'abc'" does not. Solution: Also give an error when evaluating only a string. (closes #10434)
2022-05-06patch 8.2.4880: Vim9: misplaced elseif causes invalid memory accessv8.2.4880Bram Moolenaar
Problem: Vim9: misplaced elseif causes invalid memory access. Solution: Check cs_idx not to be negative.
2022-05-05patch 8.2.4873: Vim9: using "else" differs from using "endif/if !cond"v8.2.4873Bram Moolenaar
Problem: Vim9: using "else" differs from using "endif/if !cond". Solution: Leave the block and enter another one. (closes #10320)
2022-05-05patch 8.2.4872: Vim9: no error for using an expression onlyv8.2.4872Bram Moolenaar
Problem: Vim9: no error for using an expression only at the script level when followed by an empty line. Solution: Do not check the line number but whether something follows. (closes #10357)
2022-04-03patch 8.2.4675: no error for missing expression after :elseifv8.2.4675Bram Moolenaar
Problem: No error for missing expression after :elseif. (Ernie Rael) Solution: Check for missing expression. (closes #10068)
2022-03-03patch 8.2.4499: Vim9: at the script level declarations leak to next blockv8.2.4499Bram Moolenaar
Problem: Vim9: at the script level declarations leak from try block to catch and finally block. Solution: End the block and start a new one. (closes #9883)
2022-01-28patch 8.2.4241: some type casts are redundantv8.2.4241=?UTF-8?q?Dundar=20G=C3=B6c?=
Problem: Some type casts are redundant. Solution: Remove the type casts. (closes #9643)
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.4003: error messages are spread outv8.2.4003Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more error messages to errors.h.
2022-01-02patch 8.2.3987: error messages are spread outv8.2.3987Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more error messages to errors.h.
2022-01-01patch 8.2.3972: error messages are spread outv8.2.3972Bram Moolenaar
Problem: Error messages are spread out. Solution: Move the last errors from globals.h to errors.h.
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.
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-31patch 8.2.3959: error messages are spread outv8.2.3959Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more errors to errors.h.
2021-12-31patch 8.2.3957: error messages are spread outv8.2.3957Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more errors to errors.h.
2021-11-23patch 8.2.3656: Vim9: no error for an evironment variable by itselfv8.2.3656Bram Moolenaar
Problem: Vim9: no error for an evironment variable by itself. Solution: Give a "without effect" error. (closes #9166)
2021-11-22patch 8.2.3649: Vim9: error for variable declared in while loopv8.2.3649Bram Moolenaar
Problem: Vim9: error for variable declared in while loop. Solution: Do not keep the first variable. (closes #9191)
2021-11-22patch 8.2.3645: Vim9: The "no effect" error is not given for all registersv8.2.3645Bram Moolenaar
Problem: Vim9: The "no effect" error is not given for all registers. Solution: Include any character following '@'. (closes #8779)
2021-10-23patch 8.2.3559: loop variable recreated every timev8.2.3559Bram Moolenaar
Problem: Loop variable recreated every time. Solution: Keep the loop variable when looping.
2021-10-06patch 8.2.3486: illegal memory access with invalid sequence of commandsv8.2.3486Bram Moolenaar
Problem: Illegal memory access with invalid sequence of commands. Solution: Do not call leave_block() when not in a try block. (closes #8966) Reset did_emsg so that exception is shown as an error.
2021-10-05patch 8.2.3478: still crash with error in :catch and also in :finallyv8.2.3478Bram Moolenaar
Problem: Still crash with error in :catch and also in :finally. Solution: Only call finish_exception() once. (closes #8954)
2021-10-04patch 8.2.3470: crash with error in :catch and also in :finallyv8.2.3470Bram Moolenaar
Problem: Crash with error in :catch and also in :finally. Solution: Only discard an exception if there is one. (closes #8954)
2021-08-25patch 8.2.3376: Vim9: no warning that "@r" does not do anythingv8.2.3376Bram Moolenaar
Problem: Vim9: no warning that "@r" does not do anything. Solution: Give a "no effect" error. (closes #8779)
2021-08-10patch 8.2.3324: Vim9: Cannot use :silent with :endwhilev8.2.3324Bram Moolenaar
Problem: Vim9: Cannot use :silent with :endwhile. Solution: Allow for using the :silent modifier. (closes #8737)
2021-08-07patch 8.2.3305: Vim9: :finally in skipped block not handled correctlyv8.2.3305rbtnn
Problem: Vim9: :finally in skipped block not handled correctly. Solution: Check whether :finally is in a skipped block. (Naruhiko Nishino, closes #8724)
2021-08-05patch 8.2.3297: cannot use all commands inside a {} blockv8.2.3297Bram Moolenaar
Problem: Cannot use all commands inside a {} block after :command and :autocmd. Solution: Do consider \n to separate commands. (closes #8620)
2021-07-25patch 8.2.3216: Vim9: crash when using variable in a loop at script levelv8.2.3216Bram Moolenaar
Problem: Vim9: crash when using variable in a loop at script level. Solution: Do not clear the variable if a function was defined. Do not create a new entry in sn_var_vals every time. (closes #8628)
2021-07-20patch 8.2.3190: error messages are spread outv8.2.3190Bram Moolenaar
Problem: Error messages are spread out. Solution: Move error messages to errors.h and give them a clear name.
2021-07-10patch 8.2.3137: Vim9: no error when a line only has a variable namev8.2.3137Bram Moolenaar
Problem: Vim9: no error when a line only has a variable name. Solution: Give an error when an expression is evaluated without an effect. (closes #8538)
2021-07-08patch 8.2.3126: Vim9: for loop error reports wrong line numberv8.2.3126Bram Moolenaar
Problem: Vim9: for loop error reports wrong line number. Solution: Save and restore the line number when evaluating the expression. (closes #8514)
2021-07-04patch 8.2.3099: Vim9: missing catch/finally not reported at script levelv8.2.3099Bram Moolenaar
Problem: Vim9: missing catch/finally not reported at script level. Solution: Give an error. (closes #8487)
2021-04-05patch 8.2.2725: Vim9: message about compiling is wrong when using try/catchv8.2.2725Bram Moolenaar
Problem: Vim9: message about compiling is wrong when using try/catch. Solution: Store the compiling flag with the message. (closes #8071)
2021-03-26patch 8.2.2657: Vim9: error message for declaring variable in for loopv8.2.2657Bram Moolenaar
Problem: Vim9: error message for declaring variable in for loop. Solution: Clear variables when entering block again. (closes #8012)
2021-03-25patch 8.2.2652: Vim9: can use command modifier without an effectv8.2.2652Bram Moolenaar
Problem: Vim9: can use command modifier without an effect. Solution: Give an error for a misplaced command modifier. Fix error message number.
2021-02-26patch 8.2.2553: Vim9: Cannot put "|" after "{"v8.2.2553Bram Moolenaar
Problem: Vim9: Cannot put "|" after "{". Solution: Add the EX_TRLBAR flag. (issue #7904)
2021-01-27patch 8.2.2417: condition stack values may be used when not setv8.2.2417Bram Moolenaar
Problem: Condition stack values may be used when not set. Solution: Clear cs_script_var_len and cs_block_id just in case they get used later. (issue #7733)
2021-01-03patch 8.2.2289: Vim9: 'cpo' can become emptyv8.2.2289Bram Moolenaar
Problem: Vim9: 'cpo' can become empty. Solution: Use empty_option instead of an empty string. Update quickfix buffer after restoring 'cpo'. (closes #7608)
2020-12-19patch 8.2.2163: crash when discarded exception is the current exceptionv8.2.2163Bram Moolenaar
Problem: Crash when discarded exception is the current exception. Solution: Compare the execption with current_exception. (closes #7499)
2020-10-20patch 8.2.1870: Vim9: no need to keep all script variablesv8.2.1870Bram Moolenaar
Problem: Vim9: no need to keep all script variables. Solution: Only keep script variables when a function was defined that could use them. Fix freeing static string on exit.
2020-10-15patch 8.2.1846: Vim9: block variables are not found in compiled functionv8.2.1846Bram Moolenaar
Problem: Vim9: variables declared in a local block are not found in when a function is compiled. Solution: Look for script variables in sn_all_vars.
2020-10-14patch 8.2.1845: Vim9: function defined in a block can't use block variablesv8.2.1845Bram Moolenaar
Problem: Vim9: function defined in a block can't use variables defined in that block. Solution: First step: Make a second hashtab that holds all script variables, also block-local ones, with more information.