I'm trying to compile a third party library, but for some reason I'm getting an error. The library is likely compiled differently. I've read up on the error but I can't seem to figure out what the issue is! :(
struct sfo_entry {
char* key;
size_t size;
size_t area;
void* value;
enum sfo_value_format format;
struct sfo_entry* next;
struct sfo_entry* prev;
};
struct sfo {
struct sfo_entry* entries;
};
bool sfo_load_from_memory(struct sfo* sfo, const void* data, size_t data_size) {
struct sfo_header* hdr;
struct sfo_table_entry* entry_table;
struct sfo_table_entry* entry;
entry_table = (struct sfo_table_entry*)(data + sizeof(*hdr));
// ...
return true;
}
The error is as follows:
sfo.cpp:150:47: error: arithmetic on a pointer to void
entry_table = (struct sfo_table_entry*)(data + sizeof(*hdr));
~~~~ ^