### Godot version

4.0.beta10

### System information

Windows 10, 64bit

### Issue description

The title says it all.
Opened in compression mode, whether read or write and whether the file already exists or not, `get_path` contains an empty string. This is also the case in C#.
However, if the file is opened without compression, get_path contains the absolute file path to the file as expected.
It doesn't matter whether an internal res:// path or an external system path is used.

### Steps to reproduce

```
var file = FileAccess.open_compressed("res://file.txt", FileAccess.WRITE")
prints("get_path():", file.get_path())
```
output: `get_path():`

```
var file = FileAccess.open("res://file.txt", FileAccess.WRITE)
prints("get_path():", file.get_path())
```
output: `get_path(): res://file.txt`

 
_or under C#:_
```
using var file = FileAccess.OpenCompressed("res://test.txt", FileAccess.ModeFlags.Write);
GD.PrintS("GetPath():", file.GetPath());
```
output: `GetPath():`

### Minimal reproduction project

N/A
ERR_FAIL_COND_V_MSG(f.is_null(), 0, "File must be opened before use.");
	if (writing) {
		return write_pos;
	} else {
		return (uint64_t)read_block * block_size + read_pos;
	}
}
uint64_t FileAccessCompressed::get_length() const {
	ERR_FAIL_COND_V_MSG(f.is_null(), 0, "File must be opened before use.");
	if (writing) {
		return write_max;
	} else {
		return read_total;
	}
}
bool FileAccessCompressed::eof_reached() const {
	ERR_FAIL_COND_V_MSG(f.is_null(), false, "File must be opened before use.");
	if (writing) {
		return false;
	} else {
		return read_eof;
	}
}
uint8_t FileAccessCompressed::get_8() const {