diff options
author | Anders Carlsson <andersca@mac.com> | 2010-05-18 16:51:41 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2010-05-18 16:51:41 +0000 |
commit | be48c548c5593f1b6f9d02fec59c1a204e20c71e (patch) | |
tree | 4e28021b523a73cb6bbd758ffb2a6603a6ff27fb /clang/test/CodeGenCXX/pointers-to-data-members.cpp | |
parent | 86ad085b402c0f9c4b9a355783347e653e9ca67d (diff) | |
download | bcm5719-llvm-be48c548c5593f1b6f9d02fec59c1a204e20c71e.tar.gz bcm5719-llvm-be48c548c5593f1b6f9d02fec59c1a204e20c71e.zip |
Correctly initialize bases with member pointers. This should fix PR6441 but that test case is a bit weird and I'd like to investigate further before closing that bug.
llvm-svn: 104025
Diffstat (limited to 'clang/test/CodeGenCXX/pointers-to-data-members.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/pointers-to-data-members.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/pointers-to-data-members.cpp b/clang/test/CodeGenCXX/pointers-to-data-members.cpp index 5ccf06e302e..cab06dbd3d3 100644 --- a/clang/test/CodeGenCXX/pointers-to-data-members.cpp +++ b/clang/test/CodeGenCXX/pointers-to-data-members.cpp @@ -35,6 +35,21 @@ namespace ZeroInit { int A::*pa; } s; } ss; + + struct A { + int A::*a; + int b; + }; + + struct B { + A a[10]; + char c; + int B::*b; + }; + + struct C : A, B { int j; }; + // CHECK: @_ZN8ZeroInit1cE = global %"struct.ZeroInit::C" { [16 x i8] c"\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00", [176 x i8] c"\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\FF\FF\FF\FF\FF\FF\FF\FF", i32 0, [4 x i8] zeroinitializer } + C c; } // PR5674 @@ -102,3 +117,4 @@ struct A { A::A() : a() {} } + |