### 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
}
::(const char *p_str) {
	copy_from(p_str);
}
::(const wchar_t *p_str) {
	copy_from(p_str);
}
::(const char32_t *p_str) {
	copy_from(p_str);
}
::(const char *p_str, int p_clip_to_len) {
	copy_from(p_str, p_clip_to_len);
}
::(const wchar_t *p_str, int p_clip_to_len) {
	copy_from(p_str, p_clip_to_len);
}
::(const char32_t *p_str, int p_clip_to_len) {
	copy_from(p_str, p_clip_to_len);
}
::(const StrRange &p_range) {
	if (!p_range.c_str) {
		return;
	}
	copy_from(p_range.c_str, p_range.len);
}
int64_t ::hex_to_int() const {
	int len = length();
	if (len == 0) {
		return 0;
	}