public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value.
@ 2010-12-12 19:59 frtsang at hotmail dot com
2010-12-12 20:15 ` [Bug libstdc++/46914] " frtsang at hotmail dot com
` (17 more replies)
0 siblings, 18 replies; 19+ messages in thread
From: frtsang at hotmail dot com @ 2010-12-12 19:59 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
Summary: std::atomic<int*>::exchange(...) doesn't store correct
value.
Product: gcc
Version: 4.4.3
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: frtsang@hotmail.com
Run the following to compile the program below.
$ g++ -std=c++0x ./test.cpp -o test.tsk
//test.cpp
#include <iostream>
#include <stdatomic.h>
int main(int argc, char **argv)
{
int *a = new int(10);
std::cout << "a = " << a << " *a = " << *a << std::endl;
std::atomic<int*> x(a);
int *ptr = x;
std::cout << "ptr = " << ptr << " *ptr " << *ptr << std::endl;
int *b = new int(11);
std::cout << "b = " << b << " *b = " << *b << std::endl;
std::cout << "x.exchange(b) = " << x.exchange(b) << std::endl;
ptr = x;
std::cout << "ptr = " << ptr << " *ptr " << *ptr << std::endl;
int *c = new int(12);
std::cout << "c = " << c << " *c = " << *c << std::endl;
std::cout << "x.exchange(c) = " << x.exchange(c) << std::endl;
ptr = x;
std::cout << "ptr = " << ptr << " *ptr " << *ptr << std::endl;
return 0;
}
$ g++ --version
g++ (Ubuntu 4.4.3-4ubuntu5) 4.4.3
Copyright (C) 2009 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
It runs and gives the following result.
./test.tsk
a = 0x9b9c008 *a = 10
ptr = 0x9b9c008 *ptr 10
b = 0x9b9c018 *b = 11
x.exchange(b) = 0x9b9c008
ptr = 0x1ec71b *ptr -388381823
c = 0x9b9c028 *c = 12
x.exchange(c) = 0x1ec71b
ptr = 0x1ec71b *ptr -388381823
After "x" is initialized with "a", it doesn't store the new value correctly in
its "exchange" member function.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
@ 2010-12-12 20:15 ` frtsang at hotmail dot com
2010-12-12 20:51 ` paolo.carlini at oracle dot com
` (16 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: frtsang at hotmail dot com @ 2010-12-12 20:15 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #1 from Francis <frtsang at hotmail dot com> 2010-12-12 20:15:04 UTC ---
Forget to mention my system type
$ uname -a
Linux my_mach_name 2.6.32-26-generic #48-Ubuntu SMP Wed Nov 24 09:00:03 UTC
2010 i686 GNU/Linux
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
2010-12-12 20:15 ` [Bug libstdc++/46914] " frtsang at hotmail dot com
@ 2010-12-12 20:51 ` paolo.carlini at oracle dot com
2011-01-27 14:48 ` paolo.carlini at oracle dot com
` (15 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2010-12-12 20:51 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #2 from Paolo Carlini <paolo.carlini at oracle dot com> 2010-12-12 20:51:40 UTC ---
I cannot reproduce this on anything from current 4.4 branch to mainline (with
<atomic>). I get:
a = 0x603010 *a = 10
ptr = 0x603010 *ptr 10
b = 0x603030 *b = 11
x.exchange(b) = 0x603010
ptr = 0x603030 *ptr 11
c = 0x603050 *c = 12
x.exchange(c) = 0x603030
ptr = 0x603050 *ptr 12
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
2010-12-12 20:15 ` [Bug libstdc++/46914] " frtsang at hotmail dot com
2010-12-12 20:51 ` paolo.carlini at oracle dot com
@ 2011-01-27 14:48 ` paolo.carlini at oracle dot com
2011-01-27 14:57 ` redi at gcc dot gnu.org
` (14 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-01-27 14:48 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
Paolo Carlini <paolo.carlini at oracle dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jwakely.gcc at gmail dot
| |com
--- Comment #3 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-01-27 14:30:27 UTC ---
Jon, can you help me trying to reproduce this? I can't, it seems an Ubuntu
issue.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (2 preceding siblings ...)
2011-01-27 14:48 ` paolo.carlini at oracle dot com
@ 2011-01-27 14:57 ` redi at gcc dot gnu.org
2011-01-27 15:17 ` paolo.carlini at oracle dot com
` (13 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: redi at gcc dot gnu.org @ 2011-01-27 14:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-01-27 14:43:49 UTC ---
I think I tried to reproduce it on Fedora last month and failed - I'll look
again at the weekend
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (3 preceding siblings ...)
2011-01-27 14:57 ` redi at gcc dot gnu.org
@ 2011-01-27 15:17 ` paolo.carlini at oracle dot com
2011-01-27 15:18 ` redi at gcc dot gnu.org
` (12 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-01-27 15:17 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #5 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-01-27 15:02:52 UTC ---
Thanks!
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (4 preceding siblings ...)
2011-01-27 15:17 ` paolo.carlini at oracle dot com
@ 2011-01-27 15:18 ` redi at gcc dot gnu.org
2011-01-27 15:52 ` paolo.carlini at oracle dot com
` (11 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: redi at gcc dot gnu.org @ 2011-01-27 15:18 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #6 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-01-27 15:06:17 UTC ---
as requested in the bug reporting guidelines, please provide the output of 'gcc
-v' (not just gcc --version) so we can see how your compiler was configured
I know the Debian gcc packages default to -march=i486 but I don't know about
Ubuntu
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (5 preceding siblings ...)
2011-01-27 15:18 ` redi at gcc dot gnu.org
@ 2011-01-27 15:52 ` paolo.carlini at oracle dot com
2011-01-27 15:57 ` paolo.carlini at oracle dot com
` (10 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-01-27 15:52 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #7 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-01-27 15:33:47 UTC ---
Ok. In any case we should not risk miscompiling stuff, better bailing out at
compile time. I see that in atomic_base.h the configure-time macros
_GLIBCXX_ATOMIC_BUILTINS_* are used and I se no uses of the
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_* macros, the only one sensitive to the
command line switches. But apparently the PR is about compiling *without* any
special command line switch affecting the availability of the builtins, thus I
don't see how things could possibly go wrong. Something also to keep in mind is
that [GLIBCXX_ENABLE_ATOMIC_BUILTINS] in acinclude.m4 changed recently: I don't
think we want to go through big efforts fixing this issue affecting only C++0x
facilities in case it shows up only on 4.4.x, say, and it's fixed in mainline.
I'll also try to run further tests in mainline, multilib too.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (6 preceding siblings ...)
2011-01-27 15:52 ` paolo.carlini at oracle dot com
@ 2011-01-27 15:57 ` paolo.carlini at oracle dot com
2011-01-27 16:11 ` paolo.carlini at oracle dot com
` (9 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-01-27 15:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
Paolo Carlini <paolo.carlini at oracle dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |paolo.carlini at oracle dot
| |com
--- Comment #8 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-01-27 15:45:01 UTC ---
I can confirm my negative results with multilib mainline default configured.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (7 preceding siblings ...)
2011-01-27 15:57 ` paolo.carlini at oracle dot com
@ 2011-01-27 16:11 ` paolo.carlini at oracle dot com
2011-01-28 8:48 ` frtsang at hotmail dot com
` (8 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-01-27 16:11 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #9 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-01-27 15:58:19 UTC ---
Likewise for 4_5-branch.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (8 preceding siblings ...)
2011-01-27 16:11 ` paolo.carlini at oracle dot com
@ 2011-01-28 8:48 ` frtsang at hotmail dot com
2011-01-28 10:11 ` paolo.carlini at oracle dot com
` (7 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: frtsang at hotmail dot com @ 2011-01-28 8:48 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #10 from Francis <frtsang at hotmail dot com> 2011-01-28 05:00:23 UTC ---
This is how my compiler is configured.
$ /usr/bin$ ./gcc-4.4 -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.4.3-4ubuntu5'
--with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared
--enable-multiarch --enable-linker-build-id --with-system-zlib
--libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.4 --program-suffix=-4.4 --enable-nls
--enable-clocale=gnu --enable-libstdcxx-debug --enable-plugin --enable-objc-gc
--enable-targets=all --disable-werror --with-arch-32=i486 --with-tune=generic
--enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu
--target=i486-linux-gnu
Thread model: posix
gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5)
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (9 preceding siblings ...)
2011-01-28 8:48 ` frtsang at hotmail dot com
@ 2011-01-28 10:11 ` paolo.carlini at oracle dot com
2011-01-28 10:56 ` paolo.carlini at oracle dot com
` (6 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-01-28 10:11 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #11 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-01-28 09:43:44 UTC ---
Ok, with --with-arch-32=i486 in the configure options and -m32 on the command
line the problem can be reproduced.
Frankly, I don't understand what is going on: in that case, by default,
everything should remain consistent and the _GLIBCXX_ATOMIC_BUILTINS_* used
when building atomic.cc should be still the correct ones for user code too (if
some different -march were used on the command line, then I could see possible
troubles, again, because the atomic headers don't use macros sensitive to the
actual command line options).
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (10 preceding siblings ...)
2011-01-28 10:11 ` paolo.carlini at oracle dot com
@ 2011-01-28 10:56 ` paolo.carlini at oracle dot com
2011-02-01 17:30 ` paolo.carlini at oracle dot com
` (5 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-01-28 10:56 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
Paolo Carlini <paolo.carlini at oracle dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |bkoz at redhat dot com
--- Comment #12 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-01-28 10:22:27 UTC ---
I'm making some progress: using --with-arch-32=i586 is fine, and the reason is,
in that case the _GLIBCXX_ATOMIC_BUILTINS_* are *all* true (in the i486 case,
_GLIBCXX_ATOMIC_BUILTINS_8 is false). Now, the testcase only uses ints, but in
atomic_base.h we require either all true, or the special case of at least
_GLIBCXX_ATOMIC_BUILTINS_1 true, that is _GLIBCXX_ATOMIC_PROPERTY == 1, or
none true, that is _GLIBCXX_ATOMIC_PROPERTY == 0.
Given that, I suppose, Ubuntu and Debian have been using -i486 only because of
the crazyness old GCCs defaulting to i386 and now everything is different
finally (essentially the current default is a bit more than pentium4), I don't
consider this issue particularly serious.
Still, it would be nice to understand why both _GLIBCXX_ATOMIC_PROPERTY == 1
(as this PR shows) and _GLIBCXX_ATOMIC_PROPERTY == 0 (as trying
--with-arch-32=i386 shows), both don't work. Maybe Benjamin has ideas...
Note: the command line per se doesn't seem to matter, is the way the *.so is
built that matters.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (11 preceding siblings ...)
2011-01-28 10:56 ` paolo.carlini at oracle dot com
@ 2011-02-01 17:30 ` paolo.carlini at oracle dot com
2011-02-01 17:39 ` paolo.carlini at oracle dot com
` (4 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-02-01 17:30 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
Paolo Carlini <paolo.carlini at oracle dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2011.02.01 17:11:44
CC|paolo.carlini at oracle dot |
|com |
AssignedTo|unassigned at gcc dot |paolo.carlini at oracle dot
|gnu.org |com
Target Milestone|--- |4.6.0
Ever Confirmed|0 |1
--- Comment #13 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-02-01 17:11:44 UTC ---
I see the (absolutely stupid) typo we have in the code. Fix forthcoming.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (12 preceding siblings ...)
2011-02-01 17:30 ` paolo.carlini at oracle dot com
@ 2011-02-01 17:39 ` paolo.carlini at oracle dot com
2011-02-01 19:40 ` paolo at gcc dot gnu.org
` (3 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-02-01 17:39 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
Paolo Carlini <paolo.carlini at oracle dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (13 preceding siblings ...)
2011-02-01 17:39 ` paolo.carlini at oracle dot com
@ 2011-02-01 19:40 ` paolo at gcc dot gnu.org
2011-02-01 19:42 ` paolo at gcc dot gnu.org
` (2 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: paolo at gcc dot gnu.org @ 2011-02-01 19:40 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #15 from paolo at gcc dot gnu.org <paolo at gcc dot gnu.org> 2011-02-01 18:15:58 UTC ---
Author: paolo
Date: Tue Feb 1 18:15:56 2011
New Revision: 169495
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169495
Log:
2011-02-01 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/46914
* include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
_ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
avoid name conflicts.
Modified:
branches/gcc-4_5-branch/libstdc++-v3/ChangeLog
branches/gcc-4_5-branch/libstdc++-v3/include/bits/atomic_0.h
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (14 preceding siblings ...)
2011-02-01 19:40 ` paolo at gcc dot gnu.org
@ 2011-02-01 19:42 ` paolo at gcc dot gnu.org
2011-02-01 19:43 ` paolo.carlini at oracle dot com
2011-02-02 18:33 ` dnovillo at gcc dot gnu.org
17 siblings, 0 replies; 19+ messages in thread
From: paolo at gcc dot gnu.org @ 2011-02-01 19:42 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #14 from paolo at gcc dot gnu.org <paolo at gcc dot gnu.org> 2011-02-01 18:15:41 UTC ---
Author: paolo
Date: Tue Feb 1 18:15:39 2011
New Revision: 169494
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169494
Log:
2011-02-01 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/46914
* include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
_ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
avoid name conflicts.
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/atomic_0.h
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (15 preceding siblings ...)
2011-02-01 19:42 ` paolo at gcc dot gnu.org
@ 2011-02-01 19:43 ` paolo.carlini at oracle dot com
2011-02-02 18:33 ` dnovillo at gcc dot gnu.org
17 siblings, 0 replies; 19+ messages in thread
From: paolo.carlini at oracle dot com @ 2011-02-01 19:43 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
Paolo Carlini <paolo.carlini at oracle dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
Target Milestone|4.6.0 |4.5.3
--- Comment #16 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-02-01 18:16:45 UTC ---
Fixed for 4.5.3 and 4.6.0.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug libstdc++/46914] std::atomic<int*>::exchange(...) doesn't store correct value.
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
` (16 preceding siblings ...)
2011-02-01 19:43 ` paolo.carlini at oracle dot com
@ 2011-02-02 18:33 ` dnovillo at gcc dot gnu.org
17 siblings, 0 replies; 19+ messages in thread
From: dnovillo at gcc dot gnu.org @ 2011-02-02 18:33 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46914
--- Comment #17 from Diego Novillo <dnovillo at gcc dot gnu.org> 2011-02-02 18:16:47 UTC ---
Author: dnovillo
Date: Wed Feb 2 18:16:41 2011
New Revision: 169753
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169753
Log:
2011-02-01 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/46914
* include/bits/atomic_0.h (_ATOMIC_STORE_, _ATOMIC_MODIFY_,
_ATOMIC_CMPEXCHNG_): Rename __v -> __w, and __m -> __n, to
avoid name conflicts.
Modified:
branches/google/integration/libstdc++-v3/ChangeLog
branches/google/integration/libstdc++-v3/include/bits/atomic_0.h
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2011-02-02 18:33 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-12-12 19:59 [Bug libstdc++/46914] New: std::atomic<int*>::exchange(...) doesn't store correct value frtsang at hotmail dot com
2010-12-12 20:15 ` [Bug libstdc++/46914] " frtsang at hotmail dot com
2010-12-12 20:51 ` paolo.carlini at oracle dot com
2011-01-27 14:48 ` paolo.carlini at oracle dot com
2011-01-27 14:57 ` redi at gcc dot gnu.org
2011-01-27 15:17 ` paolo.carlini at oracle dot com
2011-01-27 15:18 ` redi at gcc dot gnu.org
2011-01-27 15:52 ` paolo.carlini at oracle dot com
2011-01-27 15:57 ` paolo.carlini at oracle dot com
2011-01-27 16:11 ` paolo.carlini at oracle dot com
2011-01-28 8:48 ` frtsang at hotmail dot com
2011-01-28 10:11 ` paolo.carlini at oracle dot com
2011-01-28 10:56 ` paolo.carlini at oracle dot com
2011-02-01 17:30 ` paolo.carlini at oracle dot com
2011-02-01 17:39 ` paolo.carlini at oracle dot com
2011-02-01 19:40 ` paolo at gcc dot gnu.org
2011-02-01 19:42 ` paolo at gcc dot gnu.org
2011-02-01 19:43 ` paolo.carlini at oracle dot com
2011-02-02 18:33 ` dnovillo 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).