From 30d4d3fa5ec241dd24b25910621bace9427202d0 Mon Sep 17 00:00:00 2001 From: mashumafi Date: Sun, 19 Feb 2023 21:24:39 -0500 Subject: Fix: Func with typed args error when arg is null --- .../runtime/features/typed_argument_is_null.gd | 27 ++++++++++++++++++++++ .../runtime/features/typed_argument_is_null.out | 3 +++ 2 files changed, 30 insertions(+) create mode 100644 modules/gdscript/tests/scripts/runtime/features/typed_argument_is_null.gd create mode 100644 modules/gdscript/tests/scripts/runtime/features/typed_argument_is_null.out (limited to 'modules/gdscript/tests/scripts') diff --git a/modules/gdscript/tests/scripts/runtime/features/typed_argument_is_null.gd b/modules/gdscript/tests/scripts/runtime/features/typed_argument_is_null.gd new file mode 100644 index 0000000000..277242156d --- /dev/null +++ b/modules/gdscript/tests/scripts/runtime/features/typed_argument_is_null.gd @@ -0,0 +1,27 @@ +# https://github.com/godotengine/godot/issues/72967 + +class CustomNode: + extends Node + + static func test_custom_node(n: CustomNode): + if not n: + print("null node") + +func test(): + test_typed_argument_is_null() + +func get_custom_node() -> CustomNode: + return null + +func test_typed_argument_is_null(): + var node: Node = Node.new() + print_node_name(node.get_parent()) + node.free() + test_custom_node() + +func test_custom_node(): + CustomNode.test_custom_node(get_custom_node()) + +func print_node_name(n: Node): + if not n: + print("null node") diff --git a/modules/gdscript/tests/scripts/runtime/features/typed_argument_is_null.out b/modules/gdscript/tests/scripts/runtime/features/typed_argument_is_null.out new file mode 100644 index 0000000000..41560003d6 --- /dev/null +++ b/modules/gdscript/tests/scripts/runtime/features/typed_argument_is_null.out @@ -0,0 +1,3 @@ +GDTEST_OK +null node +null node -- cgit v1.2.3