### Godot version

4.1.3

### System information

Windows 10

### Issue description

E 0:00:47:0705   Message.gd:46 @ from_raw(): Class 'FileAccess' or its base class cannot be instantiated.
  <Erreur C++>   Condition "!ti->creation_func" is true. Returning: nullptr
  <Source C++>   core/object/class_db.cpp:341 @ instantiate()
  <Pile des appels>Message.gd:46 @ from_raw()
                 WebRTCClient.gd:30 @ _process()

`from_raw() is a byte_to_var_with_objects() function`

### Steps to reproduce

try to decode an array containing a FileAccess object among many other vars

byte_to_var_with_objects([FileAccess.open(path, FileAccess.READ), a, b, c, d, ...])

### Minimal reproduction project

N/A
}
			r_len += 4;
			for (int i = 0; i < v.size(); i++) {
				int len;
				Error err = encode_variant(v.get(i), buf, len, p_full_objects, p_depth + 1);
				ERR_FAIL_COND_V(err, err);
				ERR_FAIL_COND_V(len % 4, ERR_BUG);
				r_len += len;
				if (buf) {
					buf += len;
				}
			}
		} break;
		
		case Variant::PACKED_BYTE_ARRAY: {
			Vector<uint8_t> data = p_variant;
			int datalen = data.size();
			int datasize = sizeof(uint8_t);
			if (buf) {
				encode_uint32(datalen, buf);
				buf += 4;
				const uint8_t *r = data.ptr();
				if (r) {
					memcpy(buf, &r[0], datalen * datasize);
					buf += datalen * datasize;
				}
			}
			r_len += 4 + datalen * datasize;
			while (r_len % 4) {
				r_len++;