diff options
| author | Saleem Abdulrasool <compnerd@compnerd.org> | 2016-02-06 22:36:34 +0000 |
|---|---|---|
| committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2016-02-06 22:36:34 +0000 |
| commit | 5e03c655a3bea99011cbaa9ecafe9d91765c3d32 (patch) | |
| tree | ba9c54eee412caa9c68d23b83a8d39b1301bc052 /clang/test/Index/print-cxx-manglings.cpp | |
| parent | 4108368a8912c892b3bf21b9ab5126914c4a6588 (diff) | |
| download | bcm5719-llvm-5e03c655a3bea99011cbaa9ecafe9d91765c3d32.tar.gz bcm5719-llvm-5e03c655a3bea99011cbaa9ecafe9d91765c3d32.zip | |
Index: provide adjustment thunk information for C++ manglings
Add support for exposing the adjustment thunk for virtual methods as
appropriate.
llvm-svn: 260011
Diffstat (limited to 'clang/test/Index/print-cxx-manglings.cpp')
| -rw-r--r-- | clang/test/Index/print-cxx-manglings.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/clang/test/Index/print-cxx-manglings.cpp b/clang/test/Index/print-cxx-manglings.cpp index aae29930172..27d7988eb79 100644 --- a/clang/test/Index/print-cxx-manglings.cpp +++ b/clang/test/Index/print-cxx-manglings.cpp @@ -64,3 +64,33 @@ struct v { // MSVC: CXXConstructor=v{{.*}}[mangled=??0v@@QAE@H@Z] [mangled=??_Fv@@QAEXXZ] +struct w { + virtual int m(int); +}; + +// ITANIUM: CXXMethod=m{{.*}} (virtual) [mangled=_ZN1w1mEi] + +// MACHO: CXXMethod=m{{.*}} (virtual) [mangled=__ZN1w1mEi] + +// MSVC: CXXMethod=m{{.*}} (virtual) [mangled=?m@w@@UAEHH@Z] + +struct x { + virtual int m(int); +}; + +// ITANIUM: CXXMethod=m{{.*}} (virtual) [mangled=_ZN1x1mEi] + +// MACHO: CXXMethod=m{{.*}} (virtual) [mangled=__ZN1x1mEi] + +// MSVC: CXXMethod=m{{.*}} (virtual) [mangled=?m@x@@UAEHH@Z] + +struct y : w, x { + virtual int m(int); +}; + +// ITANIUM: CXXMethod=m{{.*}} (virtual) {{.*}} [mangled=_ZN1y1mEi] [mangled=_ZThn4_N1y1mEi] + +// MACHO: CXXMethod=m{{.*}} (virtual) {{.*}} [mangled=__ZN1y1mEi] [mangled=__ZThn4_N1y1mEi] + +// MSVC: CXXMethod=m{{.*}} (virtual) {{.*}} [mangled=?m@y@@UAEHH@Z] [mangled=?m@y@@W3AEHH@Z] + |

