Hi Simon, This is due to my patch 4786acf7 <https://gitlab.haskell.org/ghc/ghc/-/commit/4786acf758ef064d3b79593774d1672e294b0afb> landing, which means GHC does better at recognising the redundant pattern match. That MR also updated the unix submodule, in order to suppress that pattern match warning.
So I would guess that you have not updated the unix submodule after rebasing your MR; perhaps try "git submodule update"? The unix submodule is currently on commit 2a6079a2 <https://gitlab.haskell.org/ghc/ghc/-/commit/4786acf758ef064d3b79593774d1672e294b0afb> . Hope that helps, Sam On Tue, 6 Sept 2022 at 17:52, Simon Peyton Jones < simon.peytonjo...@gmail.com> wrote: > My !8750 builds are failing in the Unix library with the "pattern match is > redundant" message below. > > And indeed the pattern match is redundant. Here's the .hs version of the > file > > unpackRLimit :: CRLim -> ResourceLimit > unpackRLimit (18446744073709551615) = ResourceLimitInfinity > {-# LINE 101 "libraries/unix/System/Posix/Resource.hsc" #-} > unpackRLimit other > > {-# LINE 103 "libraries/unix/System/Posix/Resource.hsc" #-} > | ((18446744073709551615) :: CRLim) /= (18446744073709551615) && > {-# LINE 104 "libraries/unix/System/Posix/Resource.hsc" #-} > other == (18446744073709551615) = ResourceLimitUnknown > {-# LINE 105 "libraries/unix/System/Posix/Resource.hsc" #-} > > {-# LINE 106 "libraries/unix/System/Posix/Resource.hsc" #-} > > {-# LINE 107 "libraries/unix/System/Posix/Resource.hsc" #-} > | ((18446744073709551615) :: CRLim) /= (18446744073709551615) && > {-# LINE 108 "libraries/unix/System/Posix/Resource.hsc" #-} > other == (18446744073709551615) = ResourceLimitUnknown > {-# LINE 109 "libraries/unix/System/Posix/Resource.hsc" #-} > > {-# LINE 110 "libraries/unix/System/Posix/Resource.hsc" #-} > | otherwise = ResourceLimit (fromIntegral other) > > The red line means that the blue lines will fail. > > So the warning looks correct. But it's stopping my CI from working. I > have no idea why this doesn't happen in HEAD. Can anyone help? > > Thanks > > Simon > > > Command line: _build/stage0/bin/aarch64-linux-gnu-ghc -Wall -Wcompat > -fdiagnostics-color=never -dynamic-too -hisuf hi -osuf o -hcsuf hc -static > -hide-all-packages -no-user-package-db '-package-env -' '-package-db > _build/stage1/lib/package.conf.d' '-this-unit-id unix-2.7.2.2' '-package-id > base-4.17.0.0' '-package-id bytestring-0.11.3.1' '-package-id time-1.12.2' > -i -i/builds/ghc/ghc/_build/stage1/libraries/unix/build > -i/builds/ghc/ghc/_build/stage1/libraries/unix/build/autogen > -i/builds/ghc/ghc/libraries/unix -Irts/include > -I_build/stage1/libraries/unix/build > -I_build/stage1/libraries/unix/build/include -Ilibraries/unix/include > -I/builds/ghc/ghc/_build/stage1/lib/aarch64-linux-ghc-9.5.20220906/time-1.12.2/include > -I/builds/ghc/ghc/_build/stage1/lib/aarch64-linux-ghc-9.5.20220906/bytestring-0.11.3.1/include > -I/builds/ghc/ghc/_build/stage1/lib/aarch64-linux-ghc-9.5.20220906/base-4.17.0.0/include > -I/builds/ghc/ghc/_build/stage1/lib/aarch64-linux-ghc-9.5.20220906/ghc-bignum-1.3/include > -I/builds/ghc/ghc/_build/stage1/lib/aarch64-linux-ghc-9.5.20220906/rts-1.0.2/include > -optP-include > -optP_build/stage1/libraries/unix/build/autogen/cabal_macros.h -outputdir > _build/stage1/libraries/unix/build -Wnoncanonical-monad-instances > -optc-Wno-error=inline -optP-Wno-nonportable-include-path -c > _build/stage1/libraries/unix/build/System/Posix/Resource.hs -o > _build/stage1/libraries/unix/build/System/Posix/Resource.o > -fllvm-fill-undef-with-garbage -dno-debug-output -Wall -XHaskell2010 > -no-global-package-db > -package-db=/builds/ghc/ghc/_build/stage1/lib/package.conf.d > -ghcversion-file=rts/include/ghcversion.h > -ghcversion-file=rts/include/ghcversion.h -O -Wno-deprecated-flags -Werror > -dlint > ===> Command failed with error code: 1 > libraries/unix/System/Posix/Resource.hsc:107:7: error: > [-Woverlapping-patterns, -Werror=overlapping-patterns] > Pattern match is redundant > In an equation for ‘unpackRLimit’: > unpackRLimit other | ((18446744073709551615) :: CRLim) > /= (18446744073709551615) > && other == (18446744073709551615) = ... > | > 107 | | ((#const RLIM_SAVED_CUR) :: CRLim) /= (#const RLIM_INFINITY) && > | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... > _______________________________________________ > ghc-devs mailing list > ghc-devs@haskell.org > http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs >
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs