summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp0x/rv9p.C
blob: ec08a824865f89c999e50c4173f3393c45355668 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// PR c++/36744
// { dg-options "-std=c++0x" }
// { dg-do run }

struct S
{
  S(): i(2) {}
  S(S const&s): i(s.i) {}
  int i;
};

void f(S x) { x.i = 0; }

extern "C" void abort (void);
int main()
{
  S y;
  f(static_cast<S&&>(y));
  if (y.i != 2)
    abort ();
  return 0;
}