### Godot version

master (95ce236b7d6a70a06ecc13fb08d48da90ed98430)

### System information

Windows 11, Vulkan Mobile, NVidia RTX 3070 TI

### Issue description

Gdscript is now crashing when a default argument of type array occurs:

```gdscript
func _ready():
	# This works
	test([1, 1, 1])
        
	# This crashes
	test()
	
func test(array := [1, 2, 3]):
	print("array is ", array)
```

### Steps to reproduce

The code snippet above is enough to produce the issue. Bisecting the repository indicates the issue was introduced by https://github.com/godotengine/godot/commit/a1d06749f18c3f47c6443ece2ec625d8ee5f1761.


### Minimal reproduction project

[DefaultArrayCrash.zip](https://github.com/godotengine/godot/files/10357164/DefaultArrayCrash.zip)

}
			}
			return result;
		} break;
		case GDScriptParser::Node::TERNARY_OPERATOR: {
			
			const GDScriptParser::TernaryOpNode *ternary = static_cast<const GDScriptParser::TernaryOpNode *>(p_expression);
			GDScriptCodeGenerator::Address result = codegen.add_temporary(_gdtype_from_datatype(ternary->get_datatype(), codegen.script));
			gen->write_start_ternary(result);
			GDScriptCodeGenerator::Address condition = _parse_expression(codegen, r_error, ternary->condition);
			if (r_error) {
				return GDScriptCodeGenerator::Address();
			}
			gen->write_ternary_condition(condition);
			if (condition.mode == GDScriptCodeGenerator::Address::TEMPORARY) {
				gen->pop_temporary();
			}
			GDScriptCodeGenerator::Address true_expr = _parse_expression(codegen, r_error, ternary->true_expr);
			if (r_error) {
				return GDScriptCodeGenerator::Address();
			}
			gen->write_ternary_true_expr(true_expr);
			if (true_expr.mode == GDScriptCodeGenerator::Address::TEMPORARY) {
				gen->pop_temporary();
			}
			GDScriptCodeGenerator::Address false_expr = _parse_expression(codegen, r_error, ternary->false_expr);
			if (r_error) {
				return GDScriptCodeGenerator::Address();
			}
			gen->write_ternary_false_expr(false_expr);