summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/ItaniumMangle.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2014-11-10 19:44:15 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2014-11-10 19:44:15 +0000
commit8e6923b7f2d7651d2cec0967645a5a75db2b8bfd (patch)
tree9c6a2a2e977f2cc6080d068448f3c39a20aa014b /clang/lib/AST/ItaniumMangle.cpp
parent442e1e05e9efdd02534932070a9a1990b3b5e4d0 (diff)
downloadbcm5719-llvm-8e6923b7f2d7651d2cec0967645a5a75db2b8bfd.tar.gz
bcm5719-llvm-8e6923b7f2d7651d2cec0967645a5a75db2b8bfd.zip
Update fold-expression mangling to match cxx-abi-dev discussion.
llvm-svn: 221623
Diffstat (limited to 'clang/lib/AST/ItaniumMangle.cpp')
-rw-r--r--clang/lib/AST/ItaniumMangle.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/clang/lib/AST/ItaniumMangle.cpp b/clang/lib/AST/ItaniumMangle.cpp
index d7b82eb56a7..e6409ce4d87 100644
--- a/clang/lib/AST/ItaniumMangle.cpp
+++ b/clang/lib/AST/ItaniumMangle.cpp
@@ -3217,12 +3217,10 @@ recurse:
case Expr::CXXFoldExprClass: {
auto *FE = cast<CXXFoldExpr>(E);
- if (!FE->getLHS())
- Out << "fl";
- else if (!FE->getRHS())
- Out << "fr";
+ if (FE->isLeftFold())
+ Out << (FE->getInit() ? "fL" : "fl");
else
- Out << "fx";
+ Out << (FE->getInit() ? "fR" : "fr");
if (FE->getOperator() == BO_PtrMemD)
Out << "ds";
OpenPOWER on IntegriCloud