public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets
@ 2015-01-17  4:39 hp at gcc dot gnu.org
  2015-01-17  4:40 ` [Bug libstdc++/64638] " hp at gcc dot gnu.org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: hp at gcc dot gnu.org @ 2015-01-17  4:39 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64638

            Bug ID: 64638
           Summary: Build failure with recent futex changes in libstdc++,
                    likely all non-futex targets
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Keywords: build
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hp at gcc dot gnu.org
                CC: torvald at gcc dot gnu.org
              Host: x86_64-linux-gnu
            Target: cris-elf

With a commit in the range (219755:219780], build has started to fail for
cris-elf as follows:

...
/tmp/hpautotest-gcc1/cris-elf/gccobj/./gcc/xgcc -shared-libgcc
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/./gcc -nostdinc++
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/src
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/src/.libs
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/libsupc++/.libs
-nostdinc -B/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/newlib/ -isystem
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/newlib/targ-include -isystem
/tmp/hpautotest-gcc1/gcc/newlib/libc/include
-B/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libgloss/cris
-L/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libgloss/libnosys
-L/tmp/hpautotest-gcc1/gcc/libgloss/cris
-B/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/bin/
-B/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/lib/ -isystem
/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/include -isystem
/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/sys-include    -x c++-header
-nostdinc++ -g -O2 
-I/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include/cris-elf
-I/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include
-I/tmp/hpautotest-gcc1/gcc/libstdc++-v3/libsupc++ -O2 -g -std=gnu++0x
/tmp/hpautotest-gcc1/gcc/libstdc++-v3/include/precompiled/stdc++.h \
    -o cris-elf/bits/stdc++.h.gch/O2ggnu++0x.gch
In file included from
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include/future:44:0,
                 from
/tmp/hpautotest-gcc1/gcc/libstdc++-v3/include/precompiled/stdc++.h:103:
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include/bits/atomic_futex.h:223:5:
error: 'mutex' does not name a type
     mutex _M_mutex;
     ^
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include/bits/atomic_futex.h:224:5:
error: 'condition_variable' does not name a type
     condition_variable _M_condvar;
     ^
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include/bits/atomic_futex.h:
In member function 'unsigned int
std::__atomic_futex_unsigned<_Waiter_bit>::_M_load(std::memory_order)':
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include/bits/atomic_futex.h:232:19:
error: 'mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                   ^
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include/bits/atomic_futex.h:232:24:
error: template argument 1 is invalid
       unique_lock<mutex> __lock(_M_mutex);
                        ^
/tmp/hpautotest-gcc1/cris-elf/gccobj/cris-elf/libstdc++-v3/include/bits/atomic_futex.h:232:33:
error: '_M_mutex' was not declared in this scope
       unique_lock<mutex> __lock(_M_mutex);
                                 ^

This is a "bare-metal" "newlib" target.


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

* [Bug libstdc++/64638] Build failure with recent futex changes in libstdc++, likely all non-futex targets
  2015-01-17  4:39 [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets hp at gcc dot gnu.org
@ 2015-01-17  4:40 ` hp at gcc dot gnu.org
  2015-01-17  5:40 ` hp at gcc dot gnu.org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: hp at gcc dot gnu.org @ 2015-01-17  4:40 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64638

--- Comment #1 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
Forgot to say the obvious: committer in CC is singled out only because of the
context of the error message.


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

* [Bug libstdc++/64638] Build failure with recent futex changes in libstdc++, likely all non-futex targets
  2015-01-17  4:39 [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets hp at gcc dot gnu.org
  2015-01-17  4:40 ` [Bug libstdc++/64638] " hp at gcc dot gnu.org
@ 2015-01-17  5:40 ` hp at gcc dot gnu.org
  2015-01-17 12:01 ` [Bug libstdc++/64638] Build failure with recent futex changes in libstdc++, likely all non-gthreads targets uweigand at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: hp at gcc dot gnu.org @ 2015-01-17  5:40 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64638

Hans-Peter Nilsson <hp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |redi at gcc dot gnu.org

--- Comment #2 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
At the risk of waving a red herring, in revision r219770, I see:

+++ libstdc++-v3/include/bits/atomic_futex.h    (revision 219770)
...
+#if !defined(_GLIBCXX_HAVE_LINUX_FUTEX)
+#include <mutex>
+#include <condition_variable>
+#endif

(no guard _GLIBCXX_HAS_GTHREADS)

but in include/std/condition_variable and mutex, respectively
#if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
...
#ifdef _GLIBCXX_HAS_GTHREADS
around the interesting bits (class mutex etc.)

and in the build log:
checking for gthreads library... no

so, is a #ifdef _GLIBCXX_HAS_GTHREADS just missing from atomic_futex.h (or some
similar missing guard)?

CC:ing reviewer.


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

* [Bug libstdc++/64638] Build failure with recent futex changes in libstdc++, likely all non-gthreads targets
  2015-01-17  4:39 [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets hp at gcc dot gnu.org
  2015-01-17  4:40 ` [Bug libstdc++/64638] " hp at gcc dot gnu.org
  2015-01-17  5:40 ` hp at gcc dot gnu.org
@ 2015-01-17 12:01 ` uweigand at gcc dot gnu.org
  2015-01-17 13:16 ` [Bug libstdc++/64638] [5 Regression] " redi at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: uweigand at gcc dot gnu.org @ 2015-01-17 12:01 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64638

Ulrich Weigand <uweigand at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |uweigand at gcc dot gnu.org

--- Comment #3 from Ulrich Weigand <uweigand at gcc dot gnu.org> ---
I see the same failure on spu-elf (another non-gthreads target).


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

* [Bug libstdc++/64638] [5 Regression] Build failure with recent futex changes in libstdc++, likely all non-gthreads targets
  2015-01-17  4:39 [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets hp at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2015-01-17 12:01 ` [Bug libstdc++/64638] Build failure with recent futex changes in libstdc++, likely all non-gthreads targets uweigand at gcc dot gnu.org
@ 2015-01-17 13:16 ` redi at gcc dot gnu.org
  2015-01-17 13:49 ` redi at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: redi at gcc dot gnu.org @ 2015-01-17 13:16 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64638

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2015-01-17
           Assignee|unassigned at gcc dot gnu.org      |redi at gcc dot gnu.org
   Target Milestone|---                         |5.0
            Summary|Build failure with recent   |[5 Regression] Build
                   |futex changes in libstdc++, |failure with recent futex
                   |likely all non-gthreads     |changes in libstdc++,
                   |targets                     |likely all non-gthreads
                   |                            |targets
     Ever confirmed|0                           |1


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

* [Bug libstdc++/64638] [5 Regression] Build failure with recent futex changes in libstdc++, likely all non-gthreads targets
  2015-01-17  4:39 [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets hp at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2015-01-17 13:16 ` [Bug libstdc++/64638] [5 Regression] " redi at gcc dot gnu.org
@ 2015-01-17 13:49 ` redi at gcc dot gnu.org
  2015-01-17 13:50 ` redi at gcc dot gnu.org
  2015-01-17 23:28 ` hp at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: redi at gcc dot gnu.org @ 2015-01-17 13:49 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64638

--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Author: redi
Date: Sat Jan 17 13:48:48 2015
New Revision: 219799

URL: https://gcc.gnu.org/viewcvs?rev=219799&root=gcc&view=rev
Log:
    PR libstdc++/64638
    * include/bits/atomic_futex.h: Use appropriate config macros for
    availability of std::mutex, std::condition and std::chrono.

Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/bits/atomic_futex.h


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

* [Bug libstdc++/64638] [5 Regression] Build failure with recent futex changes in libstdc++, likely all non-gthreads targets
  2015-01-17  4:39 [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets hp at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2015-01-17 13:49 ` redi at gcc dot gnu.org
@ 2015-01-17 13:50 ` redi at gcc dot gnu.org
  2015-01-17 23:28 ` hp at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: redi at gcc dot gnu.org @ 2015-01-17 13:50 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64638

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |4.9.3
            Version|unknown                     |5.0
      Known to fail|                            |5.0

--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> ---
It should be fixed now, but I'll leave this open until someone confirms the
build works again.


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

* [Bug libstdc++/64638] [5 Regression] Build failure with recent futex changes in libstdc++, likely all non-gthreads targets
  2015-01-17  4:39 [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets hp at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2015-01-17 13:50 ` redi at gcc dot gnu.org
@ 2015-01-17 23:28 ` hp at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: hp at gcc dot gnu.org @ 2015-01-17 23:28 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64638

Hans-Peter Nilsson <hp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #6 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
(In reply to Jonathan Wakely from comment #5)
> It should be fixed now, but I'll leave this open until someone confirms the
> build works again.

Fixed for cris-elf, for example at r219800.
I see a conversation that other targets may have different experiences, but
I'll let them deal with that, suggesting to "take the lock" and either
re-opening and (hopefully in due time also) re-closing this PR, or a new one.


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

end of thread, other threads:[~2015-01-17 23:28 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-17  4:39 [Bug libstdc++/64638] New: Build failure with recent futex changes in libstdc++, likely all non-futex targets hp at gcc dot gnu.org
2015-01-17  4:40 ` [Bug libstdc++/64638] " hp at gcc dot gnu.org
2015-01-17  5:40 ` hp at gcc dot gnu.org
2015-01-17 12:01 ` [Bug libstdc++/64638] Build failure with recent futex changes in libstdc++, likely all non-gthreads targets uweigand at gcc dot gnu.org
2015-01-17 13:16 ` [Bug libstdc++/64638] [5 Regression] " redi at gcc dot gnu.org
2015-01-17 13:49 ` redi at gcc dot gnu.org
2015-01-17 13:50 ` redi at gcc dot gnu.org
2015-01-17 23:28 ` hp at gcc dot gnu.org

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).