1// PR c++/3948
2// Test that the destructor call for a value parameter gets the
3// right address.
4
5// { dg-do run }
6
7void *p[2];
8int i;
9int r;
10
11struct C
12{
13  int m;
14
15  C() { p[i++] = this; }
16  ~C() { if (p[--i] != this) r = 1; }
17};
18
19
20void Foo (C c)
21{
22  p[i++] = &c;
23}
24
25int main ()
26{
27  C c;
28
29  Foo (c);
30  return r;
31}
32