[Bug c++/27647] New: Different results depending on optimization level with gcc-4.0.1
scharest at druide dot com
gcc-bugzilla@gcc.gnu.org
Wed May 17 19:14:00 GMT 2006
I'm not sure if this is the right place to send this bug to. I sent this bug to
Apple on March 2nd, 2006, but the bug is still open in their database as of
today (May 17th).
Here's the description:
I've noticed a different behavior of my application depending on whether I
turned optimization on or off in XCode 2.2 using gcc-4.0.1. I managed to make
the code as simple as possible to still reproduce the problem. With the
following code, in a standard C++ tool project in XCode, I get a result of 1
without optimization (expected result), but a result of 0 with optimization -O1
(bad result). I'm running on a dual G5 PPC. I'm compiling for PPC.
#include <iostream>
static bool func2(bool bool1, bool bool2)
{
if (bool1 == bool2)
return true;
else
return false;
}
bool func1(unsigned long arg1, unsigned long arg2)
{
return (func2(!(arg1 & 1), !(arg2 & 1)) && !(arg1 & 1));
}
int main (int argc, char * const argv[])
{
bool result = func1(0, 0);
std::cout << "result = " << result << "\n";
return 0;
}
--
Summary: Different results depending on optimization level with
gcc-4.0.1
Product: gcc
Version: 4.0.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: scharest at druide dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27647
More information about the Gcc-bugs
mailing list