diff options
author | Reid Kleckner <reid@kleckner.net> | 2014-02-27 19:40:09 +0000 |
---|---|---|
committer | Reid Kleckner <reid@kleckner.net> | 2014-02-27 19:40:09 +0000 |
commit | 04d3c8a09464f433b3d6ba46b6e658f537e73b89 (patch) | |
tree | 35cb2300bf5143d014b62128892a275cbd2b334f /test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp | |
parent | dda6f52db192491cd828db5d4fb56be41d4897ac (diff) |
MS ABI: Fix vftable mangling by using the vbtable name algorithm
Summary:
This merges VFPtrInfo and VBTableInfo into VPtrInfo, since they hold
almost the same information. With that change, the vbtable mangling
code can easily be applied to vftable data and we magically get the
correct, unambiguous vftable names.
Fixes PR17748.
Reviewers: timurrrr, majnemer
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D2893
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@202425 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp')
-rw-r--r-- | test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp b/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp index 088ed17ee6..ff99f0b072 100644 --- a/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp +++ b/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp @@ -257,12 +257,12 @@ N n; struct O { virtual A *f(); }; struct P : O { virtual B *f(); }; P p; -// CHECK-O: VFTable for 'O' in 'P' (1 entries) -// CHECK-O-NEXT: 0 | B *P::f() - // CHECK-O: VFTable for 'O' (1 entries) // CHECK-O-NEXT: 0 | A *O::f() +// CHECK-O: VFTable for 'O' in 'P' (1 entries) +// CHECK-O-NEXT: 0 | B *P::f() + struct Q { // CHECK-Q: VFTable for 'Q' (2 entries) // CHECK-Q-NEXT: 0 | void Q::foo(int) |