diff options
author | Anders Carlsson <andersca@mac.com> | 2009-09-17 00:43:46 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2009-09-17 00:43:46 +0000 |
commit | feb60501a830bf2625ffeffdc09be831d741a95f (patch) | |
tree | 2198f37247efbc644ad37a27eb69a4e1d3238575 /clang/test/CodeGenCXX/mangle-subst.cpp | |
parent | db7ec04fed05dbc3eaa243cdb7ea222d8b6581a9 (diff) | |
download | bcm5719-llvm-feb60501a830bf2625ffeffdc09be831d741a95f.tar.gz bcm5719-llvm-feb60501a830bf2625ffeffdc09be831d741a95f.zip |
Add basic substitution to the C++ mangler. It currently only looks at types.
llvm-svn: 82102
Diffstat (limited to 'clang/test/CodeGenCXX/mangle-subst.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/mangle-subst.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/mangle-subst.cpp b/clang/test/CodeGenCXX/mangle-subst.cpp new file mode 100644 index 00000000000..fc7304807d4 --- /dev/null +++ b/clang/test/CodeGenCXX/mangle-subst.cpp @@ -0,0 +1,20 @@ +// RUN: clang-cc -emit-llvm %s -o %t -triple=x86_64-apple-darwin9 && + +struct X {}; + +// RUN: grep "define void @_Z1f1XS_" %t | count 1 && +void f(X, X) { } + +// RUN: grep "define void @_Z1fR1XS0_" %t | count 1 && +void f(X&, X&) { } + +// RUN: grep "define void @_Z1fRK1XS1_" %t | count 1 && +void f(const X&, const X&) { } + +typedef void T(); +struct S {}; + +// RUN: grep "define void @_Z1fPFvvEM1SFvvE" %t | count 1 && +void f(T*, T (S::*)) {} + +// RUN: true |