OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.old-deja/] [g++.jason/] [dtor5.C] - Blame information for rev 338

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 305 jeremybenn
// { dg-do run  }
2
// PRMS Id: 5286
3
// Bug: g++ forgets side-effects of object in call to nonexistent destructor.
4
 
5
#include 
6
 
7
int r;
8
 
9
template  struct A {
10
  T *p;
11
  int i;
12
  A() { i = 0; p = (T*) new char[sizeof (T)]; new (p + i++) T; }
13
  ~A() { p[--i].~T(); r = i; }
14
};
15
 
16
int main()
17
{
18
  { A a; }
19
 
20
  int* p = (int*) new char[sizeof (int)];
21
  new (p + r++) int;
22
  typedef int I;
23
  p[--r].~I();
24
 
25
  return r;
26
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.