Thread: signed vs. unsigned in plpy_procedure.c

signed vs. unsigned in plpy_procedure.c

From
Andres Freund
Date:
Hi,

src/postgresql/src/pl/plpython/plpy_procedure.c: In function ‘PLy_procedure_munge_source’:
src/postgresql/src/pl/plpython/plpy_procedure.c:507:2: warning: comparison of unsigned expression >= 0 is always true
[-Wtype-limits]
  Assert(plen >= 0 && plen < mlen);

Which has a point, we assign sprintf()s result to a size_t and then
check for a negative value. Which doesn't work.

Obviously the impact is miniscule, but removing legitimate warnings is a
good thing. Trivial patch attached.

Greetings,

Andres Freund

--
 Andres Freund                       http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Attachment

Re: signed vs. unsigned in plpy_procedure.c

From
Heikki Linnakangas
Date:
On 02.07.2013 13:39, Andres Freund wrote:
> src/postgresql/src/pl/plpython/plpy_procedure.c: In function ‘PLy_procedure_munge_source’:
> src/postgresql/src/pl/plpython/plpy_procedure.c:507:2: warning: comparison of unsigned expression>= 0 is always true
[-Wtype-limits]
>    Assert(plen>= 0&&  plen<  mlen);
>
> Which has a point, we assign sprintf()s result to a size_t and then
> check for a negative value. Which doesn't work.
>
> Obviously the impact is miniscule, but removing legitimate warnings is a
> good thing. Trivial patch attached.

Thanks, applied.

- Heikki