summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_compiler.cpp
diff options
context:
space:
mode:
authorrune-scape <allie.smith.epic@gmail.com>2024-06-02 02:07:47 -0700
committerrune-scape <spartacrafter@gmail.com>2024-06-02 02:08:26 -0700
commit7f7114c00881b4b27736d429ff3918aa6538f6e5 (patch)
tree81a745d8cdd45c85f6f46435cec1671a6b7d98b3 /modules/gdscript/gdscript_compiler.cpp
parent505da68b261be6ed37b42422c61358ff9d208748 (diff)
downloadredot-engine-7f7114c00881b4b27736d429ff3918aa6538f6e5.tar.gz
GDScript: partially allow some functions on invalid scripts
+ always default initialize static variables + dont invalidate script when dependant scripts don't compile/resolve
Diffstat (limited to 'modules/gdscript/gdscript_compiler.cpp')
-rw-r--r--modules/gdscript/gdscript_compiler.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/modules/gdscript/gdscript_compiler.cpp b/modules/gdscript/gdscript_compiler.cpp
index eeffc13a10..5469dad3f7 100644
--- a/modules/gdscript/gdscript_compiler.cpp
+++ b/modules/gdscript/gdscript_compiler.cpp
@@ -3006,6 +3006,8 @@ Error GDScriptCompiler::_compile_class(GDScript *p_script, const GDScriptParser:
has_static_data = has_static_data || inner_class->has_static_data;
}
+ p_script->_static_default_init();
+
p_script->valid = true;
return OK;
}
@@ -3228,11 +3230,7 @@ Error GDScriptCompiler::compile(const GDScriptParser *p_parser, GDScript *p_scri
GDScriptCache::add_static_script(p_script);
}
- err = GDScriptCache::finish_compiling(main_script->path);
- if (err) {
- main_script->valid = false;
- }
- return err;
+ return GDScriptCache::finish_compiling(main_script->path);
}
String GDScriptCompiler::get_error() const {