summaryrefslogtreecommitdiff
path: root/clang/test/CodeGenCXX/copy-assign-synthesis-3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGenCXX/copy-assign-synthesis-3.cpp')
-rw-r--r--clang/test/CodeGenCXX/copy-assign-synthesis-3.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/copy-assign-synthesis-3.cpp b/clang/test/CodeGenCXX/copy-assign-synthesis-3.cpp
new file mode 100644
index 0000000..ce4640a
--- /dev/null
+++ b/clang/test/CodeGenCXX/copy-assign-synthesis-3.cpp
@@ -0,0 +1,24 @@
+// RUN: %clang_cc1 -emit-llvm-only -verify %s
+
+struct A {
+ A& operator=(A&);
+};
+
+struct B {
+ void operator=(B);
+};
+
+struct C {
+ A a;
+ B b;
+ float c;
+ int (A::*d)();
+ _Complex float e;
+ int f[10];
+ A g[2];
+ B h[2];
+};
+void a(C& x, C& y) {
+ x = y;
+}
+