diff options
| author | emre0altan <emrealtann77@gmail.com> | 2024-02-06 13:25:00 +0000 |
|---|---|---|
| committer | emre0altan <emrealtann77@gmail.com> | 2024-02-11 13:47:12 +0000 |
| commit | 081fa324fd11e5602b748bf45717d32692a3e7dc (patch) | |
| tree | fcfd7ab73699c00eb16aa67d24b833b5dbc3d96f /modules/gdscript | |
| parent | d3352813ea44447bfbf135efdec23acc4d1d3f89 (diff) | |
| download | redot-engine-081fa324fd11e5602b748bf45717d32692a3e7dc.tar.gz | |
set has_type false if it is BUILTIN but Variant::NIL
Diffstat (limited to 'modules/gdscript')
3 files changed, 9 insertions, 1 deletions
diff --git a/modules/gdscript/gdscript_byte_codegen.cpp b/modules/gdscript/gdscript_byte_codegen.cpp index 27766115d5..36b157521d 100644 --- a/modules/gdscript/gdscript_byte_codegen.cpp +++ b/modules/gdscript/gdscript_byte_codegen.cpp @@ -429,7 +429,7 @@ void GDScriptByteCodeGenerator::set_initial_line(int p_line) { (m_var.type.has_type && m_var.type.kind == GDScriptDataType::BUILTIN) #define IS_BUILTIN_TYPE(m_var, m_type) \ - (m_var.type.has_type && m_var.type.kind == GDScriptDataType::BUILTIN && m_var.type.builtin_type == m_type) + (m_var.type.has_type && m_var.type.kind == GDScriptDataType::BUILTIN && m_var.type.builtin_type == m_type && m_type != Variant::NIL) void GDScriptByteCodeGenerator::write_type_adjust(const Address &p_target, Variant::Type p_new_type) { switch (p_new_type) { diff --git a/modules/gdscript/tests/scripts/runtime/features/match_test_null.gd b/modules/gdscript/tests/scripts/runtime/features/match_test_null.gd new file mode 100644 index 0000000000..9bb57b68ee --- /dev/null +++ b/modules/gdscript/tests/scripts/runtime/features/match_test_null.gd @@ -0,0 +1,6 @@ +func test(): + match null: + null: + print('null matched') + _: + pass diff --git a/modules/gdscript/tests/scripts/runtime/features/match_test_null.out b/modules/gdscript/tests/scripts/runtime/features/match_test_null.out new file mode 100644 index 0000000000..7640cf42ab --- /dev/null +++ b/modules/gdscript/tests/scripts/runtime/features/match_test_null.out @@ -0,0 +1,2 @@ +GDTEST_OK +null matched |
