diff options
author | David Majnemer <david.majnemer@gmail.com> | 2015-12-29 22:25:14 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2015-12-29 22:25:14 +0000 |
commit | e77de75d7e009daaadb03e9b1091c3a9a9c9d311 (patch) | |
tree | 5f6c36f86e571a40d01a78cc00a7d693d7eadcb3 /clang/test/CodeGenCXX/mangle-ms.cpp | |
parent | 90bee6354d3e558c485926dba3e2ce2fb7f3585d (diff) | |
download | bcm5719-llvm-e77de75d7e009daaadb03e9b1091c3a9a9c9d311.tar.gz bcm5719-llvm-e77de75d7e009daaadb03e9b1091c3a9a9c9d311.zip |
[MS ABI] Invent a mangling for reference temporaries
MSVC is non-conforming and doesn't have a mangling for these. Invent
our own to unblock folks using clang.
This fixes PR25795.
llvm-svn: 256589
Diffstat (limited to 'clang/test/CodeGenCXX/mangle-ms.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/mangle-ms.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/mangle-ms.cpp b/clang/test/CodeGenCXX/mangle-ms.cpp index 22eba63b51c..d95f781f120 100644 --- a/clang/test/CodeGenCXX/mangle-ms.cpp +++ b/clang/test/CodeGenCXX/mangle-ms.cpp @@ -21,6 +21,10 @@ int _c(void) {return N::anonymous + c;} // CHECK-DAG: @"\01?_c@@YAHXZ" // X64-DAG: @"\01?_c@@YAHXZ" +const int &NeedsReferenceTemporary = 2; +// CHECK-DAG: @"\01?NeedsReferenceTemporary@@3ABHB" = constant i32* @"\01?$RT1@NeedsReferenceTemporary@@3ABHB" +// X64-DAG: @"\01?NeedsReferenceTemporary@@3AEBHEB" = constant i32* @"\01?$RT1@NeedsReferenceTemporary@@3AEBHEB" + class foo { static const short d; // CHECK-DAG: @"\01?d@foo@@0FB" |