From 1698861e93f2c403d14a0988b38731b3e3e87eb6 Mon Sep 17 00:00:00 2001
From: Thomas Munro <thomas.munro@gmail.com>
Date: Sun, 14 Dec 2025 12:30:24 +1300
Subject: [PATCH] ci: Compile test C in CompilerWarnings task.

Since the CompilerWarnings task is still using configure/make and C code
under there isn't compiled until you actually try to run the tests,
compile src/test and the ECPG preprocessed C explicitly.  The lack of
these has hidden warnings that could have been revealed by CI.

Backpatch-through: 15, where CI began
Discussion: https://postgr.es/m/1086088.1765593851%40sss.pgh.pa.us
---
 .cirrus.tasks.yml | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/.cirrus.tasks.yml b/.cirrus.tasks.yml
index 038d043d00e..b57a8033b16 100644
--- a/.cirrus.tasks.yml
+++ b/.cirrus.tasks.yml
@@ -944,6 +944,8 @@ task:
         CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang"
       make -s -j${BUILD_JOBS} clean
       time make -s -j${BUILD_JOBS} world-bin
+      time make -C src/interfaces/ecpg/test/sql -s -j${BUILD_JOBS}
+      time make -C src/test -s -j${BUILD_JOBS}
 
   # gcc, cassert on, dtrace off
   always:
@@ -955,6 +957,8 @@ task:
         CC="ccache gcc" CXX="ccache g++" CLANG="ccache clang"
       make -s -j${BUILD_JOBS} clean
       time make -s -j${BUILD_JOBS} world-bin
+      time make -C src/interfaces/ecpg/test/sql -s -j${BUILD_JOBS}
+      time make -C src/test -s -j${BUILD_JOBS}
 
   # clang, cassert off, dtrace off
   always:
@@ -965,6 +969,8 @@ task:
         CC="ccache clang" CXX="ccache clang++" CLANG="ccache clang"
       make -s -j${BUILD_JOBS} clean
       time make -s -j${BUILD_JOBS} world-bin
+      time make -C src/interfaces/ecpg/test/sql -s -j${BUILD_JOBS}
+      time make -C src/test -s -j${BUILD_JOBS}
 
   # clang, cassert on, dtrace on
   always:
@@ -977,6 +983,8 @@ task:
         CC="ccache clang" CXX="ccache clang++" CLANG="ccache clang"
       make -s -j${BUILD_JOBS} clean
       time make -s -j${BUILD_JOBS} world-bin
+      time make -C src/interfaces/ecpg/test/sql -s -j${BUILD_JOBS}
+      time make -C src/test -s -j${BUILD_JOBS}
 
   # cross-compile to windows
   always:
@@ -989,6 +997,8 @@ task:
         CXX="ccache x86_64-w64-mingw32ucrt-g++"
       make -s -j${BUILD_JOBS} clean
       time make -s -j${BUILD_JOBS} world-bin
+      time make -C src/interfaces/ecpg/test/sql -s -j${BUILD_JOBS}
+      time make -C src/test -s -j${BUILD_JOBS}
 
   ###
   # Verify docs can be built
-- 
2.50.1 (Apple Git-155)

