patch 9.1.1044: Vim9: Patch 9.1.1014 causes regressions
Problem: Vim9: Patch 9.1.1014 causes regressions
Solution: revert it for now
This reverts commit 57f0119358ed7f060d5020309b9043463121435f since this
causes some regressions:
https://github.com/vim/vim/pull/16440#issuecomment-2600235629
So revert "patch 9.1.1014: Vim9: variable not found in transitive
import" for now.
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/errors.h b/src/errors.h
index 4d2818a..9467528 100644
--- a/src/errors.h
+++ b/src/errors.h
@@ -2738,8 +2738,7 @@
INIT(= N_("E1043: Invalid command after :export"));
EXTERN char e_export_with_invalid_argument[]
INIT(= N_("E1044: Export with invalid argument"));
-EXTERN char e_import_nesting_too_deep[]
- INIT(= N_("E1045: Import nesting too deep"));
+// E1045 not used
// E1046 not used
EXTERN char e_syntax_error_in_import_str[]
INIT(= N_("E1047: Syntax error in import: %s"));
diff --git a/src/testdir/test_vim9_class.vim b/src/testdir/test_vim9_class.vim
index 3b3ea20..c39f18c 100644
--- a/src/testdir/test_vim9_class.vim
+++ b/src/testdir/test_vim9_class.vim
@@ -3662,73 +3662,7 @@
v9.CheckScriptSuccess(lines)
enddef
-" Test for multi level import
-def Test_multi_level_import_normal()
- var lines =<< trim END
- vim9script
- export class Property
- public var value: string
- endclass
- END
- writefile(lines, 'aa.vim', 'D')
-
- lines =<< trim END
- vim9script
- import './aa.vim'
- export class View
- var content = aa.Property.new('')
- endclass
- END
- writefile(lines, 'bb.vim', 'D')
-
- lines =<< trim END
- vim9script
- import './bb.vim'
- class MyView extends bb.View
- def new(value: string)
- this.content.value = value
- enddef
- endclass
- var myView = MyView.new('This should be ok')
- END
- v9.CheckScriptSuccess(lines)
-enddef
-
-" Test for multi level import
-def Test_multi_level_import_nest_over()
- var lines =<< trim END
- vim9script
- import './xbb.vim'
- export class Property
- public var value: string
- endclass
- END
- writefile(lines, 'xaa.vim', 'D')
-
- lines =<< trim END
- vim9script
- import './xaa.vim'
- export class View
- var content = aa.Property.new('')
- endclass
- END
- writefile(lines, 'xbb.vim', 'D')
-
- lines =<< trim END
- vim9script
- set maxfuncdepth=100
- import './xbb.vim'
- class MyView extends bb.View
- def new(value: string)
- this.content.value = value
- enddef
- endclass
- var myView = MyView.new('This should be ok')
- END
- v9.CheckSourceFailure(lines, 'E1045: Import nesting too deep', 3)
-enddef
-
-def Test_abtstract_class()
+def Test_abstract_class()
var lines =<< trim END
vim9script
abstract class Base
diff --git a/src/version.c b/src/version.c
index 7a2e5a8..ad451d7 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1044,
+/**/
1043,
/**/
1042,
diff --git a/src/vim9compile.c b/src/vim9compile.c
index 338415e..29b6414 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -778,7 +778,6 @@
static imported_T *
find_imported_in_script(char_u *name, size_t len, int sid)
{
- static int nesting = 0;
scriptitem_T *si;
int idx;
@@ -793,19 +792,6 @@
: STRLEN(import->imp_name) == len
&& STRNCMP(name, import->imp_name, len) == 0)
return import;
- else
- {
- if (nesting >= p_mfd)
- {
- emsg(_(e_import_nesting_too_deep));
- return NULL;
- }
- ++nesting;
- import = find_imported_in_script(name, len, import->imp_sid);
- --nesting;
- if (import != NULL)
- return import;
- }
}
return NULL;
}