[Bug c++/40036] Initializer incorrectly reordering arguments

2012-01-19 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40036

Paolo Carlini  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID

--- Comment #7 from Paolo Carlini  2012-01-19 
23:29:17 UTC ---
I don't see the point of keeping this open, frankly. If submitter has a compact
testcase neatly showing an issue, please re-open.


[Bug c++/40036] Initializer incorrectly reordering arguments

2009-05-25 Thread jwbates at mac dot com


--- Comment #6 from jwbates at mac dot com  2009-05-26 05:26 ---
Update: after some restructuring, the problem still occurs when using the -g
flag, but does not occur when the -O flag is used.


-- 


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



[Bug c++/40036] Initializer incorrectly reordering arguments

2009-05-05 Thread jwbates at mac dot com


--- Comment #5 from jwbates at mac dot com  2009-05-06 06:39 ---
All of the uninitialized memory errors in valgrind appear to occur after I do
the computation, when I'm just trying to print the results. 

I can convince myself that there's a good chance that the address swap is
leaving big chunks of my real data out in the cold, beyond my control. I mean,
if all of my data is sitting in my lhs, and that's being used as the rhs, then
it won't get touched. 

And for what it's worth, when I run valgrind on a version compiled with icc, I
get no memory errors.


-- 


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



[Bug c++/40036] Initializer incorrectly reordering arguments

2009-05-05 Thread pinskia at gcc dot gnu dot org


--- Comment #4 from pinskia at gcc dot gnu dot org  2009-05-06 06:08 ---
hmm, valgrind says there are some uninitiated memory.


-- 


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



[Bug c++/40036] Initializer incorrectly reordering arguments

2009-05-05 Thread jwbates at mac dot com


--- Comment #3 from jwbates at mac dot com  2009-05-06 05:25 ---
Not sure at all, as I have very little experience dealing with this kind of
issue. To clarify one point of ambiguity: when I mentioned swapping the order
of the arguments to match the correct evaluation behaviour. So, my constructor
Expression(lhs, rhs) calls the initializer _potential(rhs, lhs), which is
correct for my math. However, that's not the problem that I'm seeing.

When I set the breakpoint at Expression(lhs, rhs) and check the locations, lhs
is at 0x##6c, and rhs is at 0x##00 (or some such). When I step into
_potential(p, other), I should expect p to be rhs and other to be lhs, so
_potential(0x##00, 0x##6c), but what I see is _potential(0x##6c,
0x##00), which is pretty unambiguously incorrect. 

I'm perfectly willing to believe that my code is wrong, but I don't understand
what kind of code I could write (or fail to write) that could lead to a direct
call to an initializer with the argument addresses (but not the argument types)
swapped. If there's any place else that I can look, or any potential
workarounds I can try, I'll be happy to. It just looks, feels, and quacks like
a bug to me.


-- 


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



[Bug c++/40036] Initializer incorrectly reordering arguments

2009-05-05 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2009-05-06 05:02 ---
Are you sure you are not running into unspecified behavior dealing with
subexpression is computed without a sequence point?  Because from your
description you are running into that issue.  As you mentioned you swapped
around lhs and rhs and get the results you expect.  And ICC produces a
different result than GCC too.


-- 


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



[Bug c++/40036] Initializer incorrectly reordering arguments

2009-05-05 Thread jwbates at mac dot com


--- Comment #1 from jwbates at mac dot com  2009-05-06 04:09 ---
Created an attachment (id=17806)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17806&action=view)
output of g++ -save-temps


-- 


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