Bug#1096800: haskell-system-fileio: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 17:18:47 GMT 2025


Package: src:haskell-system-fileio
Version: 0.3.16.4-6
Severity: important
Tags: sid forky
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-15

[This bug is NOT targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/haskell-system-fileio_0.3.16.4-6_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other Common build failures are new warnings resulting in build failures
with -Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-15/porting_to.html

[...]
   |                                                ^^^^

lib/Filesystem.hs:95:1: warning: [-Wunused-imports]
    The import of ‘System.IO.Error’ is redundant
      except perhaps to import instances from ‘System.IO.Error’
    To import instances alone, use: import System.IO.Error()
   |
95 | import           System.IO.Error (IOError)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

lib/Filesystem.hs:928:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘throwErrnoPathIfMinus1’
    |
928 | throwErrnoPathIfMinus1 loc path = CError.throwErrnoPathIfMinus1 loc (encodeString path)
    | ^^^^^^^^^^^^^^^^^^^^^^
In file included from /usr/include/dirent.h:25,

                 from lib/hssystemfileio-unix.c:9:0: error: 

/usr/include/features.h:197:3: error:
     warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
      197 | # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
          |   ^~~~~~~
    |
197 | # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
    |   ^

lib/hssystemfileio-unix.c:19:1: error:
     error: conflicting types for ‘hssystemfileio_alloc_dirent’; have ‘struct dirent *(void *)’
       19 | hssystemfileio_alloc_dirent(void *void_dir)
          | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   |
19 | hssystemfileio_alloc_dirent(void *void_dir)
   | ^

In file included from lib/hssystemfileio-unix.c:1:0: error: 

lib/hssystemfileio-unix.h:7:1: error:
     note: previous declaration of ‘hssystemfileio_alloc_dirent’ with type ‘struct dirent *(void)’
        7 | hssystemfileio_alloc_dirent();
          | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
  |
7 | hssystemfileio_alloc_dirent();
  | ^
lib/hssystemfileio-unix.c: In function ‘hssystemfileio_readdir’:

lib/hssystemfileio-unix.c:57:17: error:
     warning: ‘readdir_r’ is deprecated [-Wdeprecated-declarations]
       57 |                 int rc = readdir_r(dir, dirent, &dirent_result);
          |                 ^~~
   |
57 |                 int rc = readdir_r(dir, dirent, &dirent_result);
   |                 ^

/usr/include/dirent.h:185:12: error:
     note: declared here
      185 | extern int readdir_r (DIR *__restrict __dirp,
          |            ^~~~~~~~~
    |
185 | extern int readdir_r (DIR *__restrict __dirp,
    |            ^
`x86_64-linux-gnu-gcc' failed in phase `C Compiler'. (Exit code: 1)
-e: error: debian/hlibrary.setup build --builddir=dist-ghc returned exit code 1
 at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 877.
	Debian::Debhelper::Dh_Lib::error("debian/hlibrary.setup build --builddir=dist-ghc returned exit"...) called at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 616
	Debian::Debhelper::Dh_Lib::error_exitcode("debian/hlibrary.setup build --builddir=dist-ghc") called at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 479
	Debian::Debhelper::Dh_Lib::doit("debian/hlibrary.setup", "build", "--builddir=dist-ghc") called at /usr/share/perl5/Debian/Debhelper/Buildsystem/Haskell/Recipes.pm line 656
	Debian::Debhelper::Buildsystem::Haskell::Recipes::build_recipe() called at -e line 1
make: *** [/usr/share/cdbs/1/class/hlibrary.mk:158: build-ghc-stamp] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-haskell-maintainers mailing list