1// RUN: %clang_cc1 -emit-llvm -std=c++11 -o - %s -triple x86_64-pc-linux-gnu | FileCheck %s
2
3struct A {
4  A &operator=(A&&);
5};
6
7struct B {
8  A a;
9  int i;
10  bool b;
11  char c;
12  long l;
13  float f;
14};
15
16void test1() {
17  B b1, b2;
18  b1 = static_cast<B&&>(b2);
19}
20
21// CHECK-LABEL: define {{.*}} @_ZN1BaSEOS_
22// CHECK: call {{.*}} @_ZN1AaSEOS_
23// CHECK-NOT: store
24// CHECK: call {{.*}}memcpy{{.*}}, i64 24
25// CHECK-NOT: store
26// CHECK: ret
27