diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 0ceeff267aa99e27b08e9c60e8172f16e11ba7fd..ef1fe2bb58b9dff343ab122fae309d9f7560244c 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -25,4 +25,4 @@ repos:
     rev: v1.3.5
     hooks:
     - id: cppcheck
-      args: ["--enable=all", "--suppress=missingIncludeSystem", "--language=c"]
+      args: ["--enable=all", "--suppress=missingIncludeSystem", "--language=c", "--std=c99"]
diff --git a/require.Makefile b/require.Makefile
index ce1a85fbf2e0cb66ff6f9cdb118c78045ef768fc..4ecb628b3d79d6b1a6d5fa99be65ef2586e15979 100644
--- a/require.Makefile
+++ b/require.Makefile
@@ -69,6 +69,8 @@ HEADERS += $(APPSRC)/require.h
 # We need to find the Linux link.h before the EPICS link.h
 USR_INCLUDES_Linux=-idirafter $(EPICS_BASE)/include
 
+USR_CFLAGS += --std=c99
+
 # ESS require doesn't use T_A, because Linux should handle linux as "1"
 # instead of its name. ESS require can handle them within the EPICS
 # IOC shell internally.