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.

Reply via email to