public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: [patch libstdc++] Optimize synchronization in std::future if futexes are available.
@ 2015-01-17  6:45 David Edelsohn
  2015-01-17  7:24 ` pinskia
  0 siblings, 1 reply; 16+ messages in thread
From: David Edelsohn @ 2015-01-17  6:45 UTC (permalink / raw)
  To: Torvald Riegel; +Cc: GCC Patches, libstdc++, Jonathan Wakely

This patch has broken bootstrap on AIX

May I mention that this really should have been tested on systems
other than x86 Linux.

In file included from /tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/
future:44:0,
                 from
/nasfarm/edelsohn/src/src/libstdc++-v3/src/c++11/compatibility-thread-c++0x.cc:30:
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:223:5:
error: 'mutex' does not name a type
     mutex _M_mutex;
     ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:224:5:
error: 'condition_variable' does not name a type
     condition_variable _M_condvar;
     ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:
In member function 'unsigned int
std::__atomic_futex_unsigned<_Waiter_bit>::_M_load(std::memory_order)':
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:232:19:
error: 'mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                   ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:232:24:
error: template argument 1 is invalid
       unique_lock<mutex> __lock(_M_mutex);
                        ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:232:33:
error: '_M_mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);

/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:
In member function 'unsigned int
std::__atomic_futex_unsigned<_Waiter_bit>::_M_load_when_not_equal(unsigned
int, std::memory_order)':
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:239:19:
error: 'mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                   ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:239:24:
error: template argument 1 is invalid
       unique_lock<mutex> __lock(_M_mutex);
                        ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:239:33:
error: '_M_mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                                 ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:241:2:
error: '_M_condvar' was not declared in this scope
  _M_condvar.wait(__lock);
  ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:
In member function 'void
std::__atomic_futex_unsigned<_Waiter_bit>::_M_load_when_equal(unsigned
int, std::memory_order)':

/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:248:19:
error: 'mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                   ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:248:24:
error: template argument 1 is invalid
       unique_lock<mutex> __lock(_M_mutex);

/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:248:33:
error: '_M_mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                                 ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:250:2:
error: '_M_condvar' was not declared in this scope
  _M_condvar.wait(__lock);
  ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:
In member function 'bool
std::__atomic_futex_unsigned<_Waiter_bit>::_M_load_when_equal_for(unsigned
int, std::memory_order, const std::chrono::duration<_Rep, _Period>&)':

/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:258:19:
error: 'mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                   ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:258:24:
error: template argument 1 is invalid
       unique_lock<mutex> __lock(_M_mutex);
                        ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:258:33:
error: '_M_mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                                 ^
/tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/bits/atomic_futex.h:259:14:
error: '_M_condvar' was not declared in this scope
       return _M_condvar.wait_for(__lock, __rtime,
              ^

etc.

- David

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2015-02-01 15:13 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-17  6:45 [patch libstdc++] Optimize synchronization in std::future if futexes are available David Edelsohn
2015-01-17  7:24 ` pinskia
2015-01-17  8:06   ` Hans-Peter Nilsson
2015-01-17 11:00     ` Jonathan Wakely
2015-01-17 14:30     ` Jonathan Wakely
2015-01-17 20:55       ` Sandra Loosemore
2015-01-17 21:13         ` Jonathan Wakely
2015-01-17 22:54           ` Sandra Loosemore
2015-01-17 22:58             ` Jonathan Wakely
2015-01-18  0:08               ` Sandra Loosemore
2015-01-18  0:24                 ` Jonathan Wakely
2015-01-18  8:37                   ` Sandra Loosemore
2015-01-18 15:32                     ` Jonathan Wakely
2015-01-18 15:49                       ` Jonathan Wakely
2015-02-01 15:13                         ` Jonathan Wakely
2015-01-29  3:35                       ` Doug Gilmore

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).