Opened 4 months ago
Last modified 4 months ago
#70362 new defect
ghc: build failure: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
Reported by: | i0ntempest | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | essandess (Steve Smith) | |
Port: | ghc |
Description (last modified by i0ntempest)
:info:build | Run GhcPkg Update Stage1: _build/stage1/libraries/ghc-boot-th/inplace-pkg-config => none :info:build In file included from rts/linker/SymbolExtras.c:12:0: error: :info:build In file included from rts/LinkerInternals.h:11:0: error: :info:build In file included from rts/include/Rts.h:38:0: error: :info:build In file included from rts/include/Stg.h:415:0: error: :info:build rts/include/stg/SMP.h:593:38: error: :info:build warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] :info:build | :info:build 593 | EXTERN_INLINE void write_barrier () {} /* nothing */ :info:build | ^ :info:build EXTERN_INLINE void write_barrier () {} /* nothing */ :info:build ^ :info:build void :info:build rts/include/stg/SMP.h:594:38: error: :info:build warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] :info:build | :info:build 594 | EXTERN_INLINE void store_load_barrier() {} /* nothing */ :info:build | ^ :info:build EXTERN_INLINE void store_load_barrier() {} /* nothing */ :info:build ^ :info:build void :info:build rts/include/stg/SMP.h:595:38: error: :info:build warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] :info:build | :info:build 595 | EXTERN_INLINE void load_load_barrier () {} /* nothing */ :info:build | ^ :info:build EXTERN_INLINE void load_load_barrier () {} /* nothing */ :info:build ^ :info:build void :info:build 3 warnings generated.
Looks like this should be just a warning, but ghc build process treated it as an error. This is on macOS 14.5 arm64.
Attachments (2)
Change History (5)
Changed 4 months ago by i0ntempest
comment:1 Changed 4 months ago by i0ntempest
Description: | modified (diff) |
---|
comment:2 Changed 4 months ago by i0ntempest
Changed 4 months ago by i0ntempest
Attachment: | main.log.zip added |
---|
comment:3 Changed 4 months ago by i0ntempest
Figured it out: ${worksrcpath}libraries/terminfo/configure
was executed using an incompatible shell, due to a symlink that I created on my system. The script immediately exited with an unexpected operator error but the build process did not catch it and just continued on.
We probably should find a way to force this script to be executed using /bin/sh
. It's not respecting its shebang line.
Note: See
TracTickets for help on using
tickets.
Okay, looks like the actual problem might not be that. I made the build output more verbose, this is the error:
I don't know why the compiler is trying to link
lNONE
.