diff options
author | rune-scape <allie.smith.epic@gmail.com> | 2024-06-02 02:07:47 -0700 |
---|---|---|
committer | rune-scape <spartacrafter@gmail.com> | 2024-06-02 02:08:26 -0700 |
commit | 7f7114c00881b4b27736d429ff3918aa6538f6e5 (patch) | |
tree | 81a745d8cdd45c85f6f46435cec1671a6b7d98b3 /modules/gdscript/gdscript_compiler.cpp | |
parent | 505da68b261be6ed37b42422c61358ff9d208748 (diff) | |
download | redot-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.cpp | 8 |
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 { |