### Godot version

4.1.1

### System information

linux

### Issue description

The `"%+f"` format adds a `+` sign in front of positive numbers. If you try to format `-0.0`, it breaks and displays both a `+` and a `-`.

### Steps to reproduce

```gdscript
@tool
extends EditorScript

func _run() -> void:
    print("%+f" % -0.0)
```

### Minimal reproduction project

see above
tmp = p_chr;
	tmp += p_str;
	return tmp;
}
 operator+(const wchar_t *p_chr, const  &p_str) {
#ifdef WINDOWS_ENABLED
	
	 tmp = ::utf16((const char16_t *)p_chr);
#else
	
	 tmp = (const char32_t *)p_chr;
#endif
	tmp += p_str;
	return tmp;
}
 operator+(char32_t p_chr, const  &p_str) {
	return (::chr(p_chr) + p_str);
}
 &::operator+=(const  &p_str) {
	const int lhs_len = length();
	if (lhs_len == 0) {
		*this = p_str;
		return *this;
	}
	const int rhs_len = p_str.length();
	if (rhs_len == 0) {
		return *this;
	}
	resize(lhs_len + rhs_len + 1);
	const char32_t *src = p_str.ptr();