GNU bug report logs -
#70890
29.3; GCC14.1 MinGW compilation error
Previous Next
Full log
View this message in rfc822 format
Oops, I've used the wrong email account. Is it possible to redirect
this bug to cyril.arnould <at> outlook.com?
Am 12.05.2024 um 09:29 schrieb Cyril Arnould:
> I wanted to check how the MinGW related issues #63365 and #63752 behave
> under GCC 14.1, however I did not get that far. Running the following:
>
>
> git clone https://git.savannah.gnu.org/git/emacs.git
> cd emacs
> ./autogen.sh
> ./configure
> make
>
>
> I get the error:
>
>
> sysdep.c: In function 'get_child_status':
> sysdep.c:479:13: error: implicit declaration of function 'waitpid'
> [-Wimplicit-function-declaration]
> 479 | pid = waitpid (child, status, options);
> | ^~~~~~~
> sysdep.c:479:13: warning: nested extern declaration of 'waitpid'
> [-Wnested-externs]
> sysdep.c: In function 'child_status_changed':
> sysdep.c:525:43: error: 'WNOHANG' undeclared (first use in this function)
> 525 | return get_child_status (child, status, WNOHANG | options, 0);
> | ^~~~~~~
> sysdep.c:525:43: note: each undeclared identifier is reported only
> once for each function it appears in
> sysdep.c:526:1: warning: control reaches end of non-void function
> [-Wreturn-type]
> 526 | }
> | ^
> make[2]: *** [Makefile:452: sysdep.o] Error 1
> make[2]: Leaving directory '/e/git/emacs-debug-gcc14/emacs/src'
> make[1]: *** [Makefile:554: src] Error 2
> make[1]: Leaving directory '/e/git/emacs-debug-gcc14/emacs'
> make[1]: Entering directory '/e/git/emacs-debug-gcc14/emacs'
> ***
> *** "make all" failed with exit status 2.
> ***
> *** You could try to:
> *** - run "make bootstrap", which might fix the problem
> *** - run "make V=1", which displays the full commands invoked by make,
> *** to further investigate the problem
> ***
> make[1]: *** [Makefile:418: advice-on-failure] Error 2
> make[1]: Leaving directory '/e/git/emacs-debug-gcc14/emacs'
> make: *** [Makefile:374: all] Error 2
>
>
> Currently I'm on commit 67b1da215c9. According to the GCC 14 porting
> page "It is no longer possible to call a function that has not been
> declared", so I guess that's the issue here. I've noticed that in
> src/syswait.c, <sys/wait.h> is only included if HAVE_SYS_WAIT_H is
> defined, which it isn't. If I do include <sys/wait.h> nonetheless in
> this file, the compilation continues.
>
> For the record, I run into an internal compiler issue in thread.c
> after that, but that's not on emacs to solve I guess.
This bug report was last modified 1 year and 60 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.