diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2018-03-10 01:47:22 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2018-03-10 01:47:22 +0000 |
commit | 007cb6df582f30ca9299d8b61357e9e45557c262 (patch) | |
tree | f64348e10d5d3ee78c3833e0b54f73c8e433d550 /clang/lib/CodeGen/MicrosoftCXXABI.cpp | |
parent | aaabea0636eb5177b4b26f9d932268dc7f677b08 (diff) | |
download | bcm5719-llvm-007cb6df582f30ca9299d8b61357e9e45557c262.tar.gz bcm5719-llvm-007cb6df582f30ca9299d8b61357e9e45557c262.zip |
Revert r326946. It caused stack overflows by significantly increasing the size of a CallArgList.
llvm-svn: 327195
Diffstat (limited to 'clang/lib/CodeGen/MicrosoftCXXABI.cpp')
-rw-r--r-- | clang/lib/CodeGen/MicrosoftCXXABI.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/MicrosoftCXXABI.cpp b/clang/lib/CodeGen/MicrosoftCXXABI.cpp index d48dfbf0909..787c9eafbec 100644 --- a/clang/lib/CodeGen/MicrosoftCXXABI.cpp +++ b/clang/lib/CodeGen/MicrosoftCXXABI.cpp @@ -1538,7 +1538,8 @@ CGCXXABI::AddedStructorArgs MicrosoftCXXABI::addImplicitConstructorArgs( } RValue RV = RValue::get(MostDerivedArg); if (FPT->isVariadic()) { - Args.insert(Args.begin() + 1, CallArg(RV, getContext().IntTy)); + Args.insert(Args.begin() + 1, + CallArg(RV, getContext().IntTy, /*needscopy=*/false)); return AddedStructorArgs::prefix(1); } Args.add(RV, getContext().IntTy); |