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

--- Comment #9 from Sanjay Patel <spatel at rotateright dot com> ---
(In reply to Sanjay Patel from comment #8)
> It seems I don't need the -std=c++11 flag as I do on OS X?

Actually, I screwed that up. We don't need that flag on OS X either...and
thankfully, the behavior matches Linux. This is on the same OS X (10.10) that I
was testing on when filing the bug:

$ g++ -O0 complex_div.cpp ; ./a.out 
 -0.0083223357032193145

$ g++ -O1 complex_div.cpp ; ./a.out 
 -0.0083223357032193145

$ g++ -O0 complex_div.cpp -std=c++11 ; ./a.out 
 -0.0083223357032193145

$ g++ -O1 complex_div.cpp -std=c++11 ; ./a.out 
 -0.0083223357032193128

So there are (at least) 2 questions:
1. Why does the answer change based on the -std?
2. What is the correct answer?

Reply via email to