summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/ItaniumMangle.cpp
diff options
context:
space:
mode:
authorVitaly Buka <vitalybuka@google.com>2017-09-21 02:51:56 +0000
committerVitaly Buka <vitalybuka@google.com>2017-09-21 02:51:56 +0000
commit17def2174993874b2cc0434b4fa7ea7f02331633 (patch)
treeb2a8cc4d97a6736f1f07279cca84886650060c87 /clang/lib/AST/ItaniumMangle.cpp
parente85a0eca212f6d6d8fdbf04b548bea37102612de (diff)
downloadbcm5719-llvm-17def2174993874b2cc0434b4fa7ea7f02331633.tar.gz
bcm5719-llvm-17def2174993874b2cc0434b4fa7ea7f02331633.zip
Revert "Give external linkage and mangling to lambdas inside inline variables and variable templates."
To fix: runtime error: load of value 15, which is not a valid value for type 'clang::LVComputationKind' This reverts commit r313827. llvm-svn: 313856
Diffstat (limited to 'clang/lib/AST/ItaniumMangle.cpp')
-rw-r--r--clang/lib/AST/ItaniumMangle.cpp8
1 files changed, 1 insertions, 7 deletions
diff --git a/clang/lib/AST/ItaniumMangle.cpp b/clang/lib/AST/ItaniumMangle.cpp
index 3dc42f2a790..dbda7a5dbd4 100644
--- a/clang/lib/AST/ItaniumMangle.cpp
+++ b/clang/lib/AST/ItaniumMangle.cpp
@@ -1691,16 +1691,10 @@ void CXXNameMangler::mangleLambda(const CXXRecordDecl *Lambda) {
// to emit that last part of the prefix here.
if (Decl *Context = Lambda->getLambdaContextDecl()) {
if ((isa<VarDecl>(Context) || isa<FieldDecl>(Context)) &&
- !isa<ParmVarDecl>(Context)) {
- // FIXME: 'inline auto [a, b] = []{ return ... };' does not get a
- // reasonable mangling here.
+ Context->getDeclContext()->isRecord()) {
if (const IdentifierInfo *Name
= cast<NamedDecl>(Context)->getIdentifier()) {
mangleSourceName(Name);
- const TemplateArgumentList *TemplateArgs = nullptr;
- if (const TemplateDecl *TD =
- isTemplate(cast<NamedDecl>(Context), TemplateArgs))
- mangleTemplateArgs(*TemplateArgs);
Out << 'M';
}
}
OpenPOWER on IntegriCloud