------- Additional Comments From pinskia at gcc dot gnu dot org 2005-07-21
20:14 -------
Confirmed, reduced testcase:
extern "C" void abort(void);
int t = 0;
struct point
{
point( const point& o ) {}
explicit point(){}
point __attribute__((pure)) operator/(const double m ) const
{
t++;
}
};
void f(const point&){}
int main()
{
point a;
f(a / 5.0);
if (t!=1)
abort();
return 0;
}
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Keywords| |wrong-code
Known to fail| |4.0.1
Known to work| |3.4.0 4.1.0
Last reconfirmed|0000-00-00 00:00:00 |2005-07-21 20:14:55
date| |
Summary|pure attribute produces |[4.1 Regression] pure
|incorrect results |attribute produces incorrect
| |results
Target Milestone|--- |4.0.2
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22597