`system-test` fails to build on GHC HEAD due to ghc-debug-stub
Recent CI jobs currently fail the HEAD test-packages
job due to the system-test
component failing. Specifically, it arises when trying to build ghc-debug-stub
, as seen in this CI job:
[1 of 1] Compiling GHC.Debug.Stub ( src/GHC/Debug/Stub.hs, /builds/ghc/head.hackage/ci/run/test-system-test/dist-newstyle/build/x86_64-linux/ghc-9.11.20240926/ghc-debug-stub-0.6.0.0/build/GHC/Debug/Stub.o, /builds/ghc/head.hackage/ci/run/test-system-test/dist-newstyle/build/x86_64-linux/ghc-9.11.20240926/ghc-debug-stub-0.6.0.0/build/GHC/Debug/Stub.dyn_o )
WARNING:
Glomming in
GHC.Debug.Stub:
UD {s4zA :->, s4z7 :-> OnceL1!}
ud_z_tail [s4z7 :-> OneOccL{1,Tail 3}, s4zA :-> OneOccL{1,Tail 3}]
Call stack:
CallStack (from HasCallStack):
warnPprTrace, called at compiler/GHC/Core/Opt/OccurAnal.hs:95:5 in ghc-9.11-inplace:GHC.Core.Opt.OccurAnal
Building unordered-containers-0.2.20 (lib)
Building time-compat-1.9.7 (lib)
In file included from cbits/stub.cpp:19:0: error:
cbits/trace.h:4:42: error:
warning: ‘PRINTF’ is an unrecognized format function type [-Wformat=]
4 | __attribute__((format (PRINTF, 1, 2)));
| ^
|
4 | __attribute__((format (PRINTF, 1, 2)));
| ^
cbits/stub.cpp: In function ‘int handle_command(Socket&, const char*, uint32_t)’:
cbits/stub.cpp:767:33: error:
error: invalid conversion from ‘uint32_t’ {aka ‘unsigned int’} to ‘const char*’ [-fpermissive]
767 | write_string(resp, ip.closure_desc);
| ~~~^~~~~~~~~~~~
| |
| uint32_t {aka unsigned int}
|
767 | write_string(resp, ip.closure_desc);
| ^
cbits/stub.cpp:348:55: error:
note: initializing argument 2 of ‘void write_string(Response&, const char*)’
348 | static void write_string(Response& resp, const char * s){
| ~~~~~~~~~~~~~^
|
348 | static void write_string(Response& resp, const char * s){
| ^
`g++' failed in phase `C++ Compiler'. (Exit code: 1)
This doesn't cause the CI to fail outright, since test-packages
jobs are allowed to fail. Still, this indicates a problem that might need further investigation.
cc @mpickering