This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: 1x -Werror=unused-variable happens :-)
- From: Jonathan Wakely <jwakely dot gcc at gmail dot com>
- To: um at mutluit dot com
- Cc: "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>
- Date: Sat, 23 Jun 2018 18:14:28 +0100
- Subject: Re: 1x -Werror=unused-variable happens :-)
- References: <5B2E3145.8030000@mutluit.com>
On Sat, 23 Jun 2018 at 12:39, U.Mutlu wrote:
>
> Hi,
> when building the languages=c,c++ with "-g0 -DNDEBUG", then the following
> error happens:
>
> ../../../gcc_trunk/libitm/method-serial.cc: In member function 'void
> GTM::gtm_thread::serialirr_mode()':
> ../../../gcc_trunk/libitm/method-serial.cc:309:12: error: unused variable 'ok'
> [-Werror=unused-variable]
> bool ok = disp->trycommit (priv_time);
> ^~
>
> Of course one can get rid of it by giving also -Wno-error=unused-variable.
>
>
> But nevertheless, someone more knowledgeable should check & possibly fix that
> assert related error:
>
> bool ok = disp->trycommit (priv_time);
> // Given that we're already serial, the trycommit better work.
> assert (ok);
>
> I think maybe so:
>
> // Given that we're already serial, the trycommit better work.
> #ifndef NDEBUG
> const bool ok = disp->trycommit (priv_time);
> assert (ok);
> #else
> disp->trycommit (priv_time);
> #endif
No, because now the statement has to be maintained twice. This is what
__attribute__((unused)) is for.
This belongs in bugzilla really, not this mailing list.