### Godot version

4.0 Beta10

### System information

Windows 10, Vulkan, GTX1060

### Issue description

`PropertyTweener`'s methods' return value are not discarded and effect the unary operator at next line.

In Editor:
![in_editor](https://user-images.githubusercontent.com/61624558/210715100-04bdf283-7954-4be3-94ca-338987b24c5b.png)


In cpp:
![in_cpp](https://user-images.githubusercontent.com/61624558/210715127-519f6d54-fc15-468f-9aca-ba7d387a5a7b.png)


### Steps to reproduce

Just run the Minimal reproduction project.

### Minimal reproduction project

[Bug Report.zip](https://github.com/godotengine/godot/files/10349829/Bug.Report.zip)

codegen.generator->pop_temporary();
			
			GDScriptCodeGenerator::Address element_addr = codegen.add_temporary();
			GDScriptCodeGenerator::Address element_type_addr = codegen.add_temporary();
			
			for (int i = 0; i < p_pattern->dictionary.size(); i++) {
				const GDScriptParser::PatternNode::Pair &element = p_pattern->dictionary[i];
				if (element.value_pattern && element.value_pattern->pattern_type == GDScriptParser::PatternNode::PT_REST) {
					
					break;
				}
				
				codegen.generator->write_and_left_operand(result_addr);
				
				GDScriptCodeGenerator::Address pattern_key_addr = _parse_expression(codegen, r_error, element.key);
				if (r_error) {
					return GDScriptCodeGenerator::Address();
				}
				
				func_args.clear();
				func_args.push_back(pattern_key_addr);
				codegen.generator->write_call(result_addr, p_value_addr, "has", func_args);
				if (element.value_pattern != nullptr) {
					
					codegen.generator->write_and_left_operand(result_addr);
					
					codegen.generator->write_get(element_addr, pattern_key_addr, p_value_addr);
					
					func_args.clear();
					func_args.push_back(element_addr);