diff --git a/.gitea/workflows/validate.yaml b/.gitea/workflows/validate.yaml
new file mode 100644
index 0000000..4b233a2
--- /dev/null
+++ b/.gitea/workflows/validate.yaml
@@ -0,0 +1,36 @@
+name: Validate the build 
+run-name: ${{ gitea.actor }} is validating code with clang 19
+on: [push]
+
+jobs:
+  Validate-With-Modern-Clang:
+    runs-on: ubuntu-latest
+    container:
+      image: node:18-alpine
+    steps:
+      - name: Install dependencies
+        run: |
+          apk add --no-cache git make bash
+
+          # Install LLVM/Clang 19 from edge repository
+          echo "http://dl-cdn.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories
+          echo "http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories
+
+          apk update
+          apk add --no-cache llvm19 clang19 clang19-analyzer compiler-rt valgrind
+
+          # Verify versions
+          echo "---------------------"
+          echo "Clang version:"
+          clang --version
+          echo "---------------------"
+          echo "Valgrind version:"
+          valgrind --version
+          echo "---------------------"
+
+      - name: Check out repository code
+        uses: actions/checkout@v4
+
+      - name: make validate
+        run: |
+          make validate
diff --git a/Makefile b/Makefile
index 6d2cf6f..e567b37 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@
 
 CC=clang
 LD=clang
-CFLAGS=-Wall -Wextra -Wpedantic -O0 -g3 -std=c23 -fno-omit-frame-pointer -fno-optimize-sibling-calls
+CFLAGS=-Wall -Wextra -Wpedantic -O0 -g3 -std=c23 -fno-omit-frame-pointer -fno-optimize-sibling-calls -D_POSIX_C_SOURCE=200809L
 LDFLAGS?=
 
 SOURCES = $(shell find src/ -type f -name '*.c')