[libc-commits] [libc] [libc] Add compile tests for each public header (PR #122527)

Nick Desaulniers via libc-commits libc-commits at lists.llvm.org
Fri Jan 10 13:56:58 PST 2025


================
@@ -483,3 +483,69 @@ add_libc_test(
   DEPENDS
     libc.include.llvm-libc-macros.math_function_macros
 )
+
+# Test `#include <...>` of each header in each available language mode.
+# This is gated on -DLLVM_LIBC_BUILD_HEADER_TESTS=ON until all the bugs
+# in headers are fixed so the tests all compile.
+set(TEST_STDC_VERSIONS 89;99;11;17;23)
+set(TEST_STDCXX_VERSIONS 03;11;14;17;20;23;26)
+
+function(add_header_test target_name source_file deps std_mode)
+  if(LLVM_LIBC_BUILD_HEADER_TESTS)
+    add_libc_test(
+      ${target_name}
+      C_TEST
+      UNIT_TEST_ONLY
----------------
nickdesaulniers wrote:

IIRC, I think the hermetic tests are only built in fullbuild mode; as are the headers only generated for fullbuild mode. So if I remember that correctly, it would be good to gate these newly added tests behind the same thing (i.e. hermetic mode only) (as you've done).

https://github.com/llvm/llvm-project/pull/122527


More information about the libc-commits mailing list