[Bug libstdc++/51296] Several 30_threads tests FAIL on Tru64 UNIX

redi at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Jan 12 16:16:00 GMT 2012


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51296

--- Comment #22 from Jonathan Wakely <redi at gcc dot gnu.org> 2012-01-12 16:16:30 UTC ---
(In reply to comment #21)
> The std/mutex change is a hack to avoid
> 
> In file included from
> /var/gcc/regression/trunk/5.1b-gcc/build/alpha-dec-osf5.1b/libstdc++-v3/include/future:40:0,
>                  from
> /vol/gcc/src/hg/trunk/local/libstdc++-v3/testsuite/30_threads/async/async.cc:27:
> /var/gcc/regression/trunk/5.1b-gcc/build/alpha-dec-osf5.1b/libstdc++-v3/include/mutex:160:5:
> error: function 'std::mutex::mutex()' defaulted on its first declaration with
> an exception-specification that differs from the implicit declaration
> 'std::mutex::mutex()'

Does adding 'noexcept' to ~__mutex_base() make that hack unnecessary?

The destructor should be implicitly noexcept, but G++ doesn't implement that
yet (PR 50043) so adding 'noexcept' there is ok.



More information about the Gcc-bugs mailing list