diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,12 @@
 # Changelog for system-fileio
 
+## 0.3.16.7
+
+* Fix build with GCC 15 ([issue #35](https://github.com/fpco/haskell-filesystem/issues/35))
+* Tested with:
+  - Cabal and GHC 8.0 - 9.12.0 on Linux
+  - Stack and GHC 9.10.1 on Linux, macOS and Windows.
+
 ## 0.3.16.6
 
 * Fix building on Windows ([issue #31](https://github.com/fpco/haskell-filesystem/issues/31), regression in 0.3.16.5).
diff --git a/lib/hssystemfileio-unix.h b/lib/hssystemfileio-unix.h
--- a/lib/hssystemfileio-unix.h
+++ b/lib/hssystemfileio-unix.h
@@ -4,7 +4,7 @@
 struct dirent;
 
 struct dirent *
-hssystemfileio_alloc_dirent();
+hssystemfileio_alloc_dirent(void *void_dir);
 
 void
 hssystemfileio_free_dirent(struct dirent *);
diff --git a/system-fileio.cabal b/system-fileio.cabal
--- a/system-fileio.cabal
+++ b/system-fileio.cabal
@@ -1,6 +1,6 @@
 cabal-version: 1.18
 name: system-fileio
-version: 0.3.16.6
+version: 0.3.16.7
 license: MIT
 license-file: license.txt
 author: John Millikin <jmillikin@gmail.com>
@@ -29,9 +29,9 @@
   tests/FilesystemTests/Windows.hs
 
 tested-with:
-  GHC == 9.12.0
+  GHC == 9.12.1
   GHC == 9.10.1
-  GHC == 9.8.2
+  GHC == 9.8.4
   GHC == 9.6.6
   GHC == 9.4.8
   GHC == 9.2.8
@@ -104,9 +104,10 @@
   if os(darwin)
     cpp-options: -DCABAL_OS_DARWIN
 
-  other-modules:
-    FilesystemTests.Posix
-    FilesystemTests.Util
-    FilesystemTests.Windows
+  other-modules:    FilesystemTests.Util
+  if os(windows)
+    other-modules:  FilesystemTests.Windows
+  else
+    other-modules:  FilesystemTests.Posix
 
   default-language: Haskell2010
