patch 8.2.2225: Vim9: error when using :import in legacy script twice
Problem: Vim9: error when using :import in legacy script twice.
Solution: Make it possible to redefine an import when reloading.
diff --git a/src/structs.h b/src/structs.h
index 93a6b0a..ba2bec6 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -1778,17 +1778,19 @@
char_u *imp_name; // name imported as (allocated)
int imp_sid; // script ID of "from"
- // for "import * as Name", "imp_name" is "Name"
- int imp_all;
+ int imp_flags; // IMP_FLAGS_ values
- // for variable
+ // for a variable
type_T *imp_type;
int imp_var_vals_idx; // index in sn_var_vals of "from"
- // for function
+ // for a function
char_u *imp_funcname; // user func name (NOT allocated)
} imported_T;
+#define IMP_FLAGS_STAR 1 // using "import * as Name"
+#define IMP_FLAGS_RELOAD 2 // script reloaded, OK to redefine
+
/*
* Info about an already sourced scripts.
*/