gcc fixes

This commit is contained in:
2024-01-24 11:13:03 -08:00
parent f0939e5c95
commit cf79328414
3 changed files with 51 additions and 55 deletions

View File

@@ -21,7 +21,7 @@
#define DEBUG_VERBOSE 0
__attribute__((always_inline)) void *safe_malloc(size_t s) {
__attribute__((always_inline)) inline void *safe_malloc(size_t s) {
if (void *p = malloc(s)) {
return p;
}
@@ -853,7 +853,7 @@ Node *&getOrCreateChild(Node *&self, uint8_t index) {
}
if (self->numChildren == 4) {
auto *newSelf = new (safe_malloc(sizeof(Node16))) Node16;
memcpy(newSelf, self, offsetof(Node, type));
memcpy((void*)newSelf, self, offsetof(Node, type));
memcpy(newSelf->index, self4->index, 4);
memcpy(newSelf->children, self4->children, 4 * sizeof(void *));
free(std::exchange(self, newSelf));