In C23 the noreturn attribute for functions needs [[ ]] to work.
At least gcc15 in c23 mode trips over this.

-- 
:wq Claudio


Index: patches/patch-src_flint_h
===================================================================
RCS file: patches/patch-src_flint_h
diff -N patches/patch-src_flint_h
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_flint_h   30 Oct 2025 15:07:01 -0000
@@ -0,0 +1,14 @@
+In C23 noreturn is actually spelled [[noreturn]]
+
+Index: src/flint.h
+--- src/flint.h.orig
++++ src/flint.h
+@@ -146,7 +146,7 @@ typedef struct __FLINT_FILE FLINT_FILE;
+ #elif __STDC_VERSION__ < 202300L
+ # define FLINT_NORETURN _Noreturn
+ #else
+-# define FLINT_NORETURN noreturn
++# define FLINT_NORETURN [[noreturn]]
+ #endif
+ 
+ #if FLINT_USES_TLS

Reply via email to