shithub: puzzles

Download patch

ref: 615a337e426c0dc598b0bcdd9aec6bcbc4c50d2c
parent: 3a3e491a8bc624eb1c3b34e54ebee8d33942add2
author: Simon Tatham <anakin@pobox.com>
date: Sat Feb 18 02:16:12 EST 2023

Add -Wmissing-prototypes to STRICT clang builds.

Ben added -Wmissing-declarations in commit 3a3e491a8bc624e for gcc
builds, and observed that clang's option of the same name doesn't do
the same job. But clang does _have_ an option to do the same job: it's
just spelled differently. Added -Wmissing-prototypes in clang builds,
so that those will check the same thing.

--- a/cmake/platforms/unix.cmake
+++ b/cmake/platforms/unix.cmake
@@ -58,8 +58,12 @@
 endif()
 
 if(STRICT AND (CMAKE_C_COMPILER_ID MATCHES "GNU"))
-  # -Wmissing-declarations means completely different things in GCC and Clang.
+  # -Wmissing-declarations is spelled differently in Clang.
   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wmissing-declarations")
+endif()
+
+if(STRICT AND (CMAKE_C_COMPILER_ID MATCHES "Clang"))
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wmissing-prototypes")
 endif()
 
 add_compile_definitions(HELP_DIR="${CMAKE_INSTALL_PREFIX}/share/sgt-puzzles/help")