From 27b20e4036430350b930d64f4f4149defceec979 Mon Sep 17 00:00:00 2001 From: Axy Date: Thu, 14 May 2026 15:51:23 +0200 Subject: [PATCH] gnu17 fix --- Makefile | 2 +- src/defer.h | 9 +++++---- src/framealloc.h | 4 ++-- src/panic.h | 3 ++- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 42b39b4..f2350d7 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ DEPSFILE=.deps OBJS=${SRCS:src/%.c=${BUILDDIR}/%.o} -CFLAGS=-Wall -Wextra -Werror -pthread -std=gnu23 +CFLAGS=-Wall -Wextra -Werror -pthread -std=gnu17 # IMPORTANT: We use this to properly keep track of stack frames at a source level CFLAGS += -finstrument-functions CFLAGS += -g diff --git a/src/defer.h b/src/defer.h index 54b77d2..2c096bf 100644 --- a/src/defer.h +++ b/src/defer.h @@ -6,7 +6,7 @@ /* By: agilliar +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2026/05/10 22:08:53 by agilliar #+# #+# */ -/* Updated: 2026/05/14 14:57:08 by agilliar ### ########.fr */ +/* Updated: 2026/05/14 15:51:02 by agilliar ### ########.fr */ /* */ /* ************************************************************************** */ @@ -46,7 +46,8 @@ static inline void defer_patch(void) if (defer_store()->stacktrack_pos != stacktrack_pos()) { - prev = cera_alloca_align(sizeof(t_defer_frame), alignof(t_defer_frame)); + prev = cera_alloca_align(sizeof(t_defer_frame), + __alignof__(t_defer_frame)); curr = defer_store(); *prev = *curr; curr->ret_ptr = stacktrack_put(&defer_pop); @@ -61,7 +62,7 @@ static inline void defer(void *f, void *dat) { t_defer *curr; - curr = cera_alloca_align(sizeof(t_defer), alignof(t_defer)); + curr = cera_alloca_align(sizeof(t_defer), __alignof__(t_defer)); defer_patch(); curr->prev = defer_store()->frame; curr->f = f; @@ -75,7 +76,7 @@ static inline void errdefer(void *f, void *dat) { t_defer *curr; - curr = cera_alloca_align(sizeof(t_defer), alignof(t_defer)); + curr = cera_alloca_align(sizeof(t_defer), __alignof__(t_defer)); defer_patch(); curr->prev = defer_store()->frame; curr->f = f; diff --git a/src/framealloc.h b/src/framealloc.h index b6d2d5b..39986a5 100644 --- a/src/framealloc.h +++ b/src/framealloc.h @@ -6,7 +6,7 @@ /* By: agilliar +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2026/05/11 19:17:56 by agilliar #+# #+# */ -/* Updated: 2026/05/14 14:53:22 by agilliar ### ########.fr */ +/* Updated: 2026/05/14 15:50:04 by agilliar ### ########.fr */ /* */ /* ************************************************************************** */ @@ -69,7 +69,7 @@ static inline void cera_alloca_patch(void) ret = stacktrack_put(&framealloc_pop); prev_frame = store->frame; frame_p = cera_alloca_align_nopatch(sizeof(t_framealloc_frame), - alignof(t_framealloc_frame)); + __alignof__(t_framealloc_frame)); *frame_p = prev_frame; store->frame.prev = frame_p; store->frame.ret_ptr = ret; diff --git a/src/panic.h b/src/panic.h index eee1a10..a748e2e 100644 --- a/src/panic.h +++ b/src/panic.h @@ -6,13 +6,14 @@ /* By: agilliar +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2026/05/10 22:11:10 by agilliar #+# #+# */ -/* Updated: 2026/05/14 15:09:11 by agilliar ### ########.fr */ +/* Updated: 2026/05/14 15:50:16 by agilliar ### ########.fr */ /* */ /* ************************************************************************** */ #ifndef PANIC_H # define PANIC_H +# include # include "jmp.h" typedef struct s_panic_info -- 2.53.0