0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

97 Commits

Author SHA1 Message Date
Bram Moolenaar
28bf649a57 patch 8.2.4499: Vim9: at the script level declarations leak to next block
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-03-03 15:11:20 +00:00
=?UTF-8?q?Dundar=20G=C3=B6c?=
420fabcd4f patch 8.2.4241: some type casts are redundant
Problem:    Some type casts are redundant.
Solution:   Remove the type casts. (closes #9643)
2022-01-28 15:28:04 +00:00
Bram Moolenaar
a6f7929e62 patch 8.2.4005: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more error messages to errors.h.
2022-01-04 21:30:47 +00:00
Bram Moolenaar
d88be5be80 patch 8.2.4003: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more error messages to errors.h.
2022-01-04 19:57:55 +00:00
Bram Moolenaar
1d423ef75f patch 8.2.3987: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more error messages to errors.h.
2022-01-02 21:26:16 +00:00
Bram Moolenaar
3a846e6bca patch 8.2.3972: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move the last errors from globals.h to errors.h.
2022-01-01 16:21:00 +00:00
Bram Moolenaar
74409f6279 patch 8.2.3970: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more errors to errors.h.
2022-01-01 15:58:22 +00:00
Bram Moolenaar
436b5adc97 patch 8.2.3961: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more errors to errors.h.
2021-12-31 22:49:24 +00:00
Bram Moolenaar
6d0570117a patch 8.2.3959: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more errors to errors.h.
2021-12-31 18:49:43 +00:00
Bram Moolenaar
1a9922243a patch 8.2.3957: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move more errors to errors.h.
2021-12-31 17:25:48 +00:00
Bram Moolenaar
65259b5c6a patch 8.2.3656: Vim9: no error for an evironment variable by itself
Problem:    Vim9: no error for an evironment variable by itself.
Solution:   Give a "without effect" error. (closes #9166)
2021-11-23 14:52:06 +00:00
Bram Moolenaar
7a53f29c03 patch 8.2.3649: Vim9: error for variable declared in while loop
Problem:    Vim9: error for variable declared in while loop.
Solution:   Do not keep the first variable. (closes #9191)
2021-11-22 18:31:02 +00:00
Bram Moolenaar
7d5b8becc3 patch 8.2.3645: Vim9: The "no effect" error is not given for all registers
Problem:    Vim9: The "no effect" error is not given for all registers.
Solution:   Include any character following '@'. (closes #8779)
2021-11-22 15:05:46 +00:00
Bram Moolenaar
ee56f3f119 patch 8.2.3559: loop variable recreated every time
Problem:    Loop variable recreated every time.
Solution:   Keep the loop variable when looping.
2021-10-23 12:34:27 +01:00
Bram Moolenaar
cce81e9673 patch 8.2.3486: illegal memory access with invalid sequence of commands
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-06 22:08:11 +01:00
Bram Moolenaar
f67d3fb736 patch 8.2.3478: still crash with error in :catch and also in :finally
Problem:    Still crash with error in :catch and also in :finally.
Solution:   Only call finish_exception() once. (closes #8954)
2021-10-05 11:22:27 +01:00
Bram Moolenaar
a684a68409 patch 8.2.3470: crash with error in :catch and also in :finally
Problem:    Crash with error in :catch and also in :finally.
Solution:   Only discard an exception if there is one. (closes #8954)
2021-10-04 18:52:19 +01:00
Bram Moolenaar
4799cef85c patch 8.2.3376: Vim9: no warning that "@r" does not do anything
Problem:    Vim9: no warning that "@r" does not do anything.
Solution:   Give a "no effect" error. (closes #8779)
2021-08-25 22:37:36 +02:00
Bram Moolenaar
917c46abe5 patch 8.2.3324: Vim9: Cannot use :silent with :endwhile
Problem:    Vim9: Cannot use :silent with :endwhile.
Solution:   Allow for using the :silent modifier. (closes #8737)
2021-08-10 19:53:01 +02:00
rbtnn
8493499880 patch 8.2.3305: Vim9: :finally in skipped block not handled correctly
Problem:    Vim9: :finally in skipped block not handled correctly.
Solution:   Check whether :finally is in a skipped block. (Naruhiko Nishino,
            closes #8724)
2021-08-07 13:26:53 +02:00
Bram Moolenaar
63b9173693 patch 8.2.3297: cannot use all commands inside a {} block
Problem:    Cannot use all commands inside a {} block after :command and
            :autocmd.
Solution:   Do consider \n to separate commands. (closes #8620)
2021-08-05 20:40:03 +02:00
Bram Moolenaar
2eb6fc3b52 patch 8.2.3216: Vim9: crash when using variable in a loop at script level
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-25 14:13:53 +02:00
Bram Moolenaar
e29a27f6f8 patch 8.2.3190: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move error messages to errors.h and give them a clear name.
2021-07-20 21:07:36 +02:00
Bram Moolenaar
c323527d67 patch 8.2.3137: Vim9: no error when a line only has a variable name
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-10 19:42:03 +02:00
Bram Moolenaar
d4ab807d62 patch 8.2.3126: Vim9: for loop error reports wrong line number
Problem:    Vim9: for loop error reports wrong line number.
Solution:   Save and restore the line number when evaluating the expression.
            (closes #8514)
2021-07-08 19:22:12 +02:00
Bram Moolenaar
4197828dc6 patch 8.2.3099: Vim9: missing catch/finally not reported at script level
Problem:    Vim9: missing catch/finally not reported at script level.
Solution:   Give an error. (closes #8487)
2021-07-04 14:47:30 +02:00
Bram Moolenaar
e8c4660a55 patch 8.2.2725: Vim9: message about compiling is wrong when using try/catch
Problem:    Vim9: message about compiling is wrong when using try/catch.
Solution:   Store the compiling flag with the message. (closes #8071)
2021-04-05 22:27:37 +02:00
Bram Moolenaar
522eefd9a2 patch 8.2.2657: Vim9: error message for declaring variable in for loop
Problem:    Vim9: error message for declaring variable in for loop.
Solution:   Clear variables when entering block again. (closes #8012)
2021-03-26 18:49:22 +01:00
Bram Moolenaar
fa984418e7 patch 8.2.2652: Vim9: can use command modifier without an effect
Problem:    Vim9: can use command modifier without an effect.
Solution:   Give an error for a misplaced command modifier.  Fix error message
            number.
2021-03-25 22:15:28 +01:00
Bram Moolenaar
0abc6e471a patch 8.2.2553: Vim9: Cannot put "|" after "{"
Problem:    Vim9: Cannot put "|" after "{".
Solution:   Add the EX_TRLBAR flag. (issue #7904)
2021-02-26 22:21:23 +01:00
Bram Moolenaar
3e492c2d5f patch 8.2.2417: condition stack values may be used when not set
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-27 21:37:13 +01:00
Bram Moolenaar
e5a2dc87fd patch 8.2.2289: Vim9: 'cpo' can become empty
Problem:    Vim9: 'cpo' can become empty.
Solution:   Use empty_option instead of an empty string.  Update quickfix
            buffer after restoring 'cpo'.  (closes #7608)
2021-01-03 19:52:05 +01:00
Bram Moolenaar
13656f02e4 patch 8.2.2163: crash when discarded exception is the current exception
Problem:    Crash when discarded exception is the current exception.
Solution:   Compare the execption with current_exception. (closes #7499)
2020-12-19 17:55:54 +01:00
Bram Moolenaar
39ca4127a0 patch 8.2.1870: Vim9: no need to keep all script variables
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-20 14:25:07 +02:00
Bram Moolenaar
fbbcd00367 patch 8.2.1846: Vim9: block variables are not found in compiled function
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-15 12:46:44 +02:00
Bram Moolenaar
8d739de43b patch 8.2.1845: Vim9: function defined in a block can't use block variables
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.
2020-10-14 19:39:19 +02:00
Bram Moolenaar
9becdf2b98 patch 8.2.1826: Vim9: cannot use a {} block at script level
Problem:    Vim9: cannot use a {} block at script level.
Solution:   Recognize a {} block.
2020-10-10 21:33:48 +02:00
Bram Moolenaar
d747548c66 patch 8.2.1825: Vim9: accessing freed memory
Problem:    Vim9: accessing freed memory.
Solution:   Clear sv_name when the variable is deleted.
2020-10-10 20:31:37 +02:00
Bram Moolenaar
fcdc5d83fb patch 8.2.1824: Vim9: variables at the script level escape their scope
Problem:    Vim9: variables at the script level escape their scope.
Solution:   When leaving a scope remove variables declared in it.
2020-10-10 19:07:09 +02:00
Bram Moolenaar
4f25b1aba0 patch 8.2.1653: expand('<stack>') does not include the final line number
Problem:    Expand('<stack>') does not include the final line number.
Solution:   Add the line nuber. (closes #6927)
2020-09-10 19:25:05 +02:00
Bram Moolenaar
a5d0423fa1 patch 8.2.1297: when a test fails it's often not easy to see where
Problem:    When a test fails it's often not easy to see what the call stack
            is.
Solution:   Add more entries from the call stack in the exception message.
2020-07-26 15:37:02 +02:00
Bram Moolenaar
2d06bfde29 patch 8.2.1281: the "trailing characters" error can be hard to understand
Problem:    The "trailing characters" error can be hard to understand.
Solution:   Add the trailing characters to the message.
2020-07-23 17:16:18 +02:00
Bram Moolenaar
8930caaa1a patch 8.2.1280: Ex command error cannot contain an argument
Problem:    Ex command error cannot contain an argument.
Solution:   Add ex_errmsg() and translate earlier.  Use e_trailing_arg where
            possible.
2020-07-23 16:37:03 +02:00
Bram Moolenaar
e6b5324e3a patch 8.2.1110: Vim9: line continuation does not work in function arguments
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-07-01 17:28:33 +02:00
Bram Moolenaar
b7a78f7a67 patch 8.2.1080: Vim9: no line break allowed in a for loop
Problem:    Vim9: no line break allowed in a for loop.
Solution:   Skip line breaks in for command.
2020-06-28 18:43:40 +02:00
Bram Moolenaar
e40fbc2ca9 patch 8.2.1071: Vim9: no line break allowed inside a lambda
Problem:    Vim9: no line break allowed inside a lambda.
Solution:   Handle line break inside a lambda in Vim9 script.
2020-06-27 18:06:45 +02:00
Bram Moolenaar
b171fb1790 patch 8.2.1049: Vim9: leaking memory when using continuation line
Problem:    Vim9: leaking memory when using continuation line.
Solution:   Keep a pointer to the continuation line in evalarg_T.  Centralize
            checking for a next command.
2020-06-24 20:34:03 +02:00
Bram Moolenaar
5409f5d8c9 patch 8.2.1047: Vim9: script cannot use line continuation like :def function
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-24 18:37:35 +02:00
Bram Moolenaar
71ccd03ee8 patch 8.2.0967: unnecessary type casts for vim_strnsave()
Problem:    Unnecessary type casts for vim_strnsave().
Solution:   Remove the type casts.
2020-06-12 22:59:11 +02:00
Bram Moolenaar
25e0f5863e patch 8.2.0823: Vim9: script reload test is disabled
Problem:    Vim9: script reload test is disabled.
Solution:   Compile a function in the context of the script where it was
            defined.  Set execution stack for compiled function.  Add a test
            that an error is reported for the right file/function.
2020-05-25 22:36:50 +02:00