------- 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