Hi Jonathan,

> The <condition_variable>, <mutex>, and <shared_mutex> headers use
> std::errc constants, but don't use std::system_error itself. They only
> use the __throw_system_error(int) function, which is defined in
> <bits/functexcept.h>.
>
> By including the header for the errc constants instead of the whole of
> <system_error> we avoid depending on the whole std::string definition.

it seems this patch broke many tests on Solaris, e.g.

FAIL: 29_atomics/atomic/requirements/types_neg.cc (test for excess errors)
Excess errors:
/var/gcc/regression/master/11.4-gcc/build/i386-pc-solaris2.11/libstdc++-v3/include/bits/std_mutex.h:157:
 error: 'EBUSY' was not declared in this scope

        Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University

Reply via email to