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

230 Commits

Author SHA1 Message Date
Bram Moolenaar
6853c38b78 patch 8.2.3411: Vim9: crash when using base name of import
Problem:    Vim9: crash when using base name of import. (Naohiro Ono)
Solution:   Check the import flags. (closes #8843)
2021-09-07 22:12:19 +02:00
Bram Moolenaar
b033ee2ddf patch 8.2.3351: Vim9: using a function by name may delete it
Problem:    Vim9: using a function by name may delete it. (Naohiro Ono)
Solution:   Increment the reference count when using a function by name.
            (closes #8760)
2021-08-15 16:08:36 +02:00
Bram Moolenaar
dd9de50f42 patch 8.2.3347: check for legacy script is incomplete
Problem:    Check for legacy script is incomplete. (Naohiro Ono)
Solution:   Also check the :legacy modifier.  Use for string concatenation
            with "." and others (issue #8756)
2021-08-15 13:49:42 +02:00
Bram Moolenaar
4830c211a4 patch 8.2.3343: Vim9: autoload test fails
Problem:    Vim9: autoload test fails.
Solution:   Adjust the way the second message is avoided
2021-08-14 14:59:27 +02:00
Bram Moolenaar
b521766c56 patch 8.2.3342: test for :let errors fails
Problem:    Test for :let errors fails.
Solution:   Adjust the test and how to avoid a second error message.
2021-08-14 14:27:30 +02:00
Bram Moolenaar
88c89c7722 patch 8.2.3341: Vim9: function call aborted despite try/catch
Problem:    Vim9: function call aborted despite try/catch. (Naohiro Ono)
Solution:   Ignore error caught by try/catch. (closes #8755)
2021-08-14 14:01:05 +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
81530e3603 patch 8.2.3239: Vim9: no error using heredoc for a number variable
Problem:    Vim9: no error using heredoc for a number variable.
Solution:   Add a type check. (closes #8627)
2021-07-28 21:25:49 +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
Yegappan Lakshmanan
7973de35ba patch 8.2.3211: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add several more type checks. Fix type check for matchaddpos().
            (Yegappan Lakshmanan, closes #8619)
2021-07-24 16:16:15 +02:00
Bram Moolenaar
2b59df00d8 patch 8.2.3201: crash in test
Problem:    Crash in test.
Solution:   Initialize "where".
2021-07-22 15:14:25 +02:00
Bram Moolenaar
d8e44476d8 patch 8.2.3197: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move a few more error messages to errors.h.
2021-07-21 22:20:33 +02:00
Yegappan Lakshmanan
83494b4ac6 patch 8.2.3188: Vim9: argument types are not checked at compile time
Problem:    Vim9: argument types are not checked at compile time.
Solution:   Add several more type checks, also at runtime. (Yegappan
            Lakshmanan, closes #8587)
2021-07-20 17:51:51 +02:00
Bram Moolenaar
605793500b patch 8.2.3186: Vim9: not all failures for import tested
Problem:    Vim9: not all failures for import tested
Solution:   Test more import failures
2021-07-19 21:45:07 +02:00
Bram Moolenaar
f6488547e3 patch 8.2.3180: Vim9: memory leak when concatenating to an imported string
Problem:    Vim9: memory leak when concatenating to an imported string.
Solution:   Clear the destination.
2021-07-18 21:24:50 +02:00
Bram Moolenaar
24e9316560 patch 8.2.3179: Vim9: cannot assign to an imported variable at script level
Problem:    Vim9: cannot assign to an imported variable at script level.
Solution:   Lookup imported items when assigning.
2021-07-18 20:40:33 +02:00
Bram Moolenaar
11005b078d patch 8.2.3152: Vim9: accessing "s:" results in an error
Problem:    Vim9: accessing "s:" results in an error.
Solution:   Do not try to lookup a script variable for "s:". (closes #8549)
2021-07-11 20:59:00 +02:00
Bram Moolenaar
c967d57aa9 patch 8.2.3129: Vim9: imported uninitialized list does not get type checked
Problem:    Vim9: imported uninitialized list does not get type checked.
Solution:   Get type from imported variable.
2021-07-08 21:38:50 +02:00
Bram Moolenaar
f055d45023 patch 8.2.3128: Vim9: uninitialzed list does not get type checked
Problem:    Vim9: uninitialzed list does not get type checked.
Solution:   Set the type when initializing the variable. (closes #8529)
2021-07-08 20:57:24 +02:00
Bram Moolenaar
108010aa47 patch 8.2.3069: error messages are spread out
Problem:    Error messages are spread out.
Solution:   Move some error messages to errors.h.  Use clearer names.
2021-06-27 22:03:33 +02:00
Bram Moolenaar
1b0a9dd413 patch 8.2.2998: Vim9: disassemble test fails
Problem:    Vim9: disassemble test fails.
Solution:   Add missing call to lookup_debug_var().
2021-06-14 21:32:21 +02:00
Bram Moolenaar
f0a4069e3d patch 8.2.2975: Vim9: can only use an autoload function name as a string
Problem:    Vim9: can only use an autoload function name as a string.
Solution:   Load the autoload script when encountered. (closes #8124)
2021-06-11 22:05:47 +02:00
Bram Moolenaar
a42e6e0082 patch 8.2.2969: subtracting from number option fails when result is zero
Problem:    Subtracting from number option fails when result is zero. (Ingo
            Karkat)
Solution:   Reset the string value when using the numeric value.
            (closes #8351)
2021-06-10 18:43:25 +02:00
Bram Moolenaar
f18332fb9e patch 8.2.2842: Vim9: skip argument to searchpair() is not compiled
Problem:    Vim9: skip argument to searchpair() is not compiled.
Solution:   Add VAR_INSTR.
2021-05-07 17:55:55 +02:00
Bram Moolenaar
2d1c57ed3d patch 8.2.2785: Vim9: cannot redirect to local variable
Problem:    Vim9: cannot redirect to local variable.
Solution:   Compile :redir when redirecting to a variable.
2021-04-19 20:50:03 +02:00
Bram Moolenaar
b7c21afef1 patch 8.2.2781: add() silently skips when adding to null list or blob
Problem:    Add() silently skips when adding to null list or blob.
Solution:   Give an error in Vim9 script.  Allocate blob when it is NULL like
            with list and dict.
2021-04-18 14:12:31 +02:00
Bram Moolenaar
a3589a0d6c patch 8.2.2763: Vim9: cannot use type in for loop unpack at script level
Problem:    Vim9: cannot use type in for loop unpack at script level.
Solution:   Advance over the type name.
2021-04-14 13:30:46 +02:00
Bram Moolenaar
f6a8d420a8 patch 8.2.2760: Vim9: no error for changing a for loop variable
Problem:    Vim9: no error for changing a for loop variable.
Solution:   Make the loop variable read-only. (issue #8102)
2021-04-13 21:48:03 +02:00
Bram Moolenaar
f93bbd0262 patch 8.2.2753: Vim9: cannot ignore an item in assignment unpack
Problem:    Vim9: cannot ignore an item in assignment unpack.
Solution:   Allow using an underscore.
2021-04-10 22:35:43 +02:00
Bram Moolenaar
962c43bf0d patch 8.2.2744: Vim9: no way to explicitly ignore an argument
Problem:    Vim9: no way to explicitly ignore an argument.
Solution:   Use the underscore as the name for an ignored argument.
2021-04-10 17:18:09 +02:00
Bram Moolenaar
12be734faf patch 8.2.2681: Vim9: test fails for redeclaring script variable
Problem:    Vim9: test fails for redeclaring script variable.
Solution:   It's OK to assign to an existing script variable in legacy.
2021-03-31 21:47:33 +02:00
Bram Moolenaar
e535db86e7 patch 8.2.2680: Vim9: problem defining a script variable from legacy function
Problem:    Vim9: problem defining a script variable from legacy function.
Solution:   Check if the script is Vim9, not the current syntax.
            (closes #8032)
2021-03-31 21:07:24 +02:00
Bram Moolenaar
3215466af9 patch 8.2.2673: Vim9: script-local funcref can have lower case name
Problem:    Vim9: script-local funcref can have lower case name.
Solution:   Require an upper case name.
2021-03-28 21:14:06 +02:00
Bram Moolenaar
ccc25aa285 patch 8.2.2660: Vim9: no error for declaration with trailing text
Problem:    Vim9: no error for declaration with trailing text.
Solution:   Give an error. (closes #8014)
2021-03-26 21:27:52 +01:00
Bram Moolenaar
77b10ffad4 patch 8.2.2603: Vim9: no effect if user command is also a function
Problem:    Vim9: no effect if user command is also a function.
Solution:   Check for paren following. (closes #7960)
2021-03-14 13:21:35 +01:00
Bram Moolenaar
cb4e80fab9 patch 8.2.2597: Vim9: "import * as" does not work at script level
Problem:    Vim9: "import * as" does not work at script level.
Solution:   Implement using an imported namespace.
2021-03-13 20:57:19 +01:00
Bram Moolenaar
d00a7fb81a patch 8.2.2579: Vim9: crash in garbagecollect after for loop
Problem:    Vim9: crash in garbagecollect after for loop.
Solution:   Do not set a reference in script item when the name was cleared.
            (closes #7935)
2021-03-08 20:47:14 +01:00
Bram Moolenaar
6c3843ca8a patch 8.2.2567: Vim9: no error if variable is defined for existing function
Problem:    Vim9: no error if variable is defined for existing function.
Solution:   Check if name isn't already in use. (closes #7897)
2021-03-04 12:38:21 +01:00
Bram Moolenaar
2e2d758902 patch 8.2.2566: Vim9: Function name is not recognized
Problem:    Vim9: Function name is not recognized.
Solution:   Change lookup_scriptvar() to also find function names.
            (closes #7770)
2021-03-03 21:22:41 +01:00
Bram Moolenaar
5b5ae29bd3 patch 8.2.2533: Vim9: cannot use a range with :unlet
Problem:    Vim9: cannot use a range with :unlet.
Solution:   Implement ISN_UNLETRANGE.
2021-02-20 17:04:02 +01:00
Bram Moolenaar
527ed38cfa patch 8.2.2526: build failure
Problem:    Build failure.
Solution:   Change lookup_scriptvar() arguments.
2021-02-17 15:05:45 +01:00
Bram Moolenaar
f785aa1354 patch 8.2.2501: not always clear where an error is reported
Problem:    Not always clear where an error is reported.
Solution:   Add the where_T structure and pass it around. (closes #7796)
2021-02-11 21:19:34 +01:00
Bram Moolenaar
9a562c184d patch 8.2.2395: Vim9: error for wrong type may report wrong line number
Problem:    Vim9: error for wrong type may report wrong line number.
Solution:   Save and restore the line number when evaluating the expression.
            (closes #7727)
2021-01-23 13:39:14 +01:00
Bram Moolenaar
57d5a01cb4 patch 8.2.2388: no easy way to get the maximum or mininum number value
Problem:    No easy way to get the maximum or mininum number value.
Solution:   Add v:numbermax and v:numbermin.
2021-01-21 21:42:31 +01:00
Bram Moolenaar
c5f59fab23 patch 8.2.2381: Vim9: divide by zero does not abort expression execution
Problem:    Vim9: divide by zero does not abort expression execution.
Solution:   Use a "failed" flag. (issue #7704)
2021-01-21 12:34:14 +01:00
Bram Moolenaar
585587dadb patch 8.2.2372: confusing error message for wrong :let command
Problem:    Confusing error message for wrong :let command.
Solution:   Only check for type in Vim9 script.
2021-01-17 20:52:13 +01:00
Bram Moolenaar
036d07144e patch 8.2.2371: Vim9: crash when using types in :for with unpack
Problem:    Vim9: crash when using types in :for with unpack.
Solution:   Check for skip_var_list() failing. Pass include_type to
            skip_var_one(). Skip type when compiling. (closes #7694)
2021-01-17 20:23:38 +01:00
Bram Moolenaar
1bb4de5302 patch 8.2.2341: expresison command line completion incomplete after "g:"
Problem:    Expresison command line completion shows variables but not
            functions after "g:". (Gary Johnson)
Solution:   Prefix "g:" when needed to a global function.
2021-01-13 19:48:46 +01:00
Bram Moolenaar
082517570d patch 8.2.2331: Vim9: wrong error when modifying dict declared with :final
Problem:    Vim9: wrong error when modifying dict declared with :final.
Solution:   Do not check for writable variable when an index follows.
            (closes #7657)
2021-01-11 21:20:18 +01:00
Bram Moolenaar
32b3f82010 patch 8.2.2306: Vim9: when using function reference type is not checked
Problem:    Vim9: when using function reference type is not checked.
Solution:   When using a function reference lookup the type and check the
            argument types. (issue #7629)
2021-01-06 21:59:39 +01:00