Thread: compiler warning in pgcrypto imath.c

compiler warning in pgcrypto imath.c

From
Jeff Janes
Date:
When compiling on an AWS 64 bit Arm machine, I get this compiler warning:

imath.c: In function 's_ksqr':
imath.c:2590:6: warning: variable 'carry' set but not used [-Wunused-but-set-variable]
      carry;
      ^~~~~

With this version():

PostgreSQL 12devel on aarch64-unknown-linux-gnu, compiled by gcc (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04) 7.3.0, 64-bit

The attached patch adds PG_USED_FOR_ASSERTS_ONLY to silence it.  Perhaps there is a better way, given that we want to change imath.c as little as possible from its upstream? 

Cheers,

Jeff

Attachment

Re: compiler warning in pgcrypto imath.c

From
Michael Paquier
Date:
On Fri, Mar 22, 2019 at 08:20:53PM -0400, Jeff Janes wrote:
> PostgreSQL 12devel on aarch64-unknown-linux-gnu, compiled by gcc
> (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04) 7.3.0, 64-bit

Adding Noah in CC as he has done the update of imath lately.

> The attached patch adds PG_USED_FOR_ASSERTS_ONLY to silence it.  Perhaps
> there is a better way, given that we want to change imath.c as little as
> possible from its upstream?

Maybe others have better ideas, but marking the variable with
PG_USED_FOR_ASSERTS_ONLY as you propose seems like the least invasive
method of all.
--
Michael

Attachment

Re: compiler warning in pgcrypto imath.c

From
Noah Misch
Date:
On Sat, Mar 23, 2019 at 10:20:16AM +0900, Michael Paquier wrote:
> On Fri, Mar 22, 2019 at 08:20:53PM -0400, Jeff Janes wrote:
> > PostgreSQL 12devel on aarch64-unknown-linux-gnu, compiled by gcc
> > (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04) 7.3.0, 64-bit
> 
> Adding Noah in CC as he has done the update of imath lately.
> 
> > The attached patch adds PG_USED_FOR_ASSERTS_ONLY to silence it.  Perhaps
> > there is a better way, given that we want to change imath.c as little as
> > possible from its upstream?
> 
> Maybe others have better ideas, but marking the variable with
> PG_USED_FOR_ASSERTS_ONLY as you propose seems like the least invasive
> method of all.

That patch looks good.  Thanks.  The main alternative would be to pass
-Wno-unused for this file.  Since you're proposing only one instance
PG_USED_FOR_ASSERTS_ONLY, I favor PG_USED_FOR_ASSERTS_ONLY over -Wno-unused.


Re: compiler warning in pgcrypto imath.c

From
Andres Freund
Date:
Hi Noah,

On 2019-03-23 00:02:36 -0700, Noah Misch wrote:
> On Sat, Mar 23, 2019 at 10:20:16AM +0900, Michael Paquier wrote:
> > On Fri, Mar 22, 2019 at 08:20:53PM -0400, Jeff Janes wrote:
> > > PostgreSQL 12devel on aarch64-unknown-linux-gnu, compiled by gcc
> > > (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04) 7.3.0, 64-bit
> > 
> > Adding Noah in CC as he has done the update of imath lately.
> > 
> > > The attached patch adds PG_USED_FOR_ASSERTS_ONLY to silence it.  Perhaps
> > > there is a better way, given that we want to change imath.c as little as
> > > possible from its upstream?
> > 
> > Maybe others have better ideas, but marking the variable with
> > PG_USED_FOR_ASSERTS_ONLY as you propose seems like the least invasive
> > method of all.
> 
> That patch looks good.  Thanks.  The main alternative would be to pass
> -Wno-unused for this file.  Since you're proposing only one instance
> PG_USED_FOR_ASSERTS_ONLY, I favor PG_USED_FOR_ASSERTS_ONLY over -Wno-unused.

This is marked as an open item, owned by you. Could you commit the
patch or otherwise resovle the issue?

Greetings,

Andres Freund



Re: compiler warning in pgcrypto imath.c

From
Noah Misch
Date:
On Wed, May 01, 2019 at 09:18:02AM -0700, Andres Freund wrote:
> On 2019-03-23 00:02:36 -0700, Noah Misch wrote:
> > On Sat, Mar 23, 2019 at 10:20:16AM +0900, Michael Paquier wrote:
> > > On Fri, Mar 22, 2019 at 08:20:53PM -0400, Jeff Janes wrote:
> > > > PostgreSQL 12devel on aarch64-unknown-linux-gnu, compiled by gcc
> > > > (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04) 7.3.0, 64-bit
> > > 
> > > Adding Noah in CC as he has done the update of imath lately.
> > > 
> > > > The attached patch adds PG_USED_FOR_ASSERTS_ONLY to silence it.  Perhaps
> > > > there is a better way, given that we want to change imath.c as little as
> > > > possible from its upstream?
> > > 
> > > Maybe others have better ideas, but marking the variable with
> > > PG_USED_FOR_ASSERTS_ONLY as you propose seems like the least invasive
> > > method of all.
> > 
> > That patch looks good.  Thanks.  The main alternative would be to pass
> > -Wno-unused for this file.  Since you're proposing only one instance
> > PG_USED_FOR_ASSERTS_ONLY, I favor PG_USED_FOR_ASSERTS_ONLY over -Wno-unused.
> 
> This is marked as an open item, owned by you. Could you commit the
> patch or otherwise resovle the issue?

I pushed Jeff's patch.



Re: compiler warning in pgcrypto imath.c

From
Michael Paquier
Date:
On Sat, May 04, 2019 at 12:15:19AM -0700, Noah Misch wrote:
> I pushed Jeff's patch.

Upon resolution, could you move the related open item on the wiki
page to the list of resolved issues [1]?

[1]: https://wiki.postgresql.org/wiki/PostgreSQL_12_Open_Items#resolved_before_12beta1
--
Michael

Attachment

Re: compiler warning in pgcrypto imath.c

From
Jeff Janes
Date:


On Sat, May 4, 2019 at 3:15 AM Noah Misch <noah@leadboat.com> wrote:

I pushed Jeff's patch.

Thank you.  I've re-tested it and I get warning-free compilation now.

Cheers,

Jeff