Rainer Orth <r...@cebitec.uni-bielefeld.de> writes:
> The recent warning patches broke Solaris bootstrap:
>
> /vol/gcc/src/hg/master/local/libiberty/pex-unix.c:326:3: error: 
> initialization of 'pid_t (*)(struct pex_obj *, pid_t,  int *, struct pex_time 
> *, int,  const char **, int *)' {aka 'long int (*)(struct pex_obj *, long 
> int,  int *, struct pex_time *, int,  const char **, int *)'} from 
> incompatible pointer type 'int (*)(struct pex_obj *, pid_t,  int *, struct 
> pex_time *, int,  const char **, int *)' {aka 'int (*)(struct pex_obj *, long 
> int,  int *, struct pex_time *, int,  const char **, int *)'} 
> [-Wincompatible-pointer-types]
>   326 |   pex_unix_wait,
>       |   ^~~~~~~~~~~~~
> /vol/gcc/src/hg/master/local/libiberty/pex-unix.c:326:3: note: (near 
> initialization for 'funcs.wait')
>
> While pex_funcs.wait expects a function returning pid_t, pex_unix_wait
> currently returns int.  However, on Solaris pid_t is long for 32-bit,
> but int for 64-bit.
>
> This patches fixes this by having pex_unix_wait return pid_t as
> expected, and like every other variant already does.
>
> Bootstrapped without regressions on i386-pc-solaris2.11,
> sparc-sun-solaris2.11, x86_64-pc-linux-gnu, and
> x86_64-apple-darwin23.1.0.
>
> Ok for trunk?
>
>       Rainer

OK, thanks.

Richard

Reply via email to