1 // { dg-do assemble } 2 // GROUPS passed bad-errors 3 typedef __SIZE_TYPE__ size_t; 4 5 class tt { 6 public: 7 tt(int); 8 9 private: 10 void *operator new(size_t a); // Forbid object creation in heap memory. 11 }; 12 13 void st(const tt&, int); 14 ff(int i,int j)15void ff(int i, int j) 16 { 17 if( i > 0 ) { 18 // This work ok. 19 tt a_tt(i); 20 st(a_tt, j); 21 } 22 else { 23 // This triggers an error because of private operator new ????. 24 st(tt(-i), j); 25 } 26 } 27