gpsd-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ✘gpsd .23.2~rc1


From: Gary E. Miller
Subject: Re: ✘gpsd .23.2~rc1
Date: Fri, 8 Apr 2022 20:22:06 -0700

Yo Hal!

On Thu, 07 Apr 2022 23:02:09 -0700
Hal Murray <halmurray@sonic.net> wrote:

> gpsd-3.23.2~rc1/gpsmon/gpsmon.c:1421:24: warning: variable 
> \u2018ts_timeout\u2019 might be clobbered by \u2018longjmp\u2019 or 
> \u2018vfork\u2019 [-Wclobbered]
> gpsd-3.23.2~rc1/gpsd/gpsd.c:2630:26: warning: variable
> \u2018ts_timeout\u2019 might be clobbered by \u2018longjmp\u2019 or
> \u2018vfork\u2019 [-Wclobbered]

Can I just delete gpsmon?  It is a PITA,  it has not been touched in
ages.  What a crazy way to juse setjmp()/longjump()...

The longjump() is to start the exit stuff.  So clobbering a timer
that has a scope of 2 lines is sorta the point?

When I use -Wclobbered on gcc 11.2.1 I get no warning.  Since I can't
see it, I'll ignore it.

> gpsd-3.23.2~rc1/gpsd/ppsthread.c:160:12: warning: returning 'int'
> from a function with return type 'const char *' makes pointer from
> integer without a cast [-Wint-conversion]

Line 160 is inside #ifdef _GNU_SOURCE", so strerror_r() should be
returning a "const char *".

From my man page:

       int strerror_r(int errnum, char *buf, size_t buflen);
                      /* XSI-compliant */

       char *strerror_r(int errnum, char *buf, size_t buflen);
                      /* GNU-specific */

> From the man page:
> 
>        char *strerror(int errnum);
>        char *strerror_l(int errnum, locale_t locale);
>        int strerror_r(int errnum, char *strerrbuf, size_t buflen);

What libc are you using??  Why do you have _GNU_SOURCE set but not using
glibc?


> [zillion of copies of these or similar from gpsfake and
> regress-driver -- maybe more]

Another dead battery.  Fix pushed.

> 32 bit Debian on X86_64
> 
> It's reproducable.

Rounding error:

- "altHAE":26.1200,
+ "altHAE":26.1199,

printf() is supposed to round for us.  So another glitch in your libc.

RGDS
GARY
---------------------------------------------------------------------------
Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97703
        gem@rellim.com  Tel:+1 541 382 8588

            Veritas liberabit vos. -- Quid est veritas?
    "If you can't measure it, you can't improve it." - Lord Kelvin

Attachment: pgpAF_DLKIhT4.pgp
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]