From: Anders Carlsson Date: Fri, 6 Nov 2009 02:50:19 +0000 (+0000) Subject: Handle ParenExprs in mangleExpression. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a7694087e4abaea261918ffbb3ffe38feb1da489;p=clang Handle ParenExprs in mangleExpression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86218 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/Mangle.cpp b/lib/CodeGen/Mangle.cpp index a5b3452796..11bbaae018 100644 --- a/lib/CodeGen/Mangle.cpp +++ b/lib/CodeGen/Mangle.cpp @@ -1015,6 +1015,11 @@ void CXXNameMangler::mangleExpression(const Expr *E) { // ::= switch (E->getStmtClass()) { default: assert(false && "Unhandled expression kind!"); + + case Expr::ParenExprClass: + mangleExpression(cast(E)->getSubExpr()); + break; + case Expr::DeclRefExprClass: { const Decl *D = cast(E)->getDecl(); diff --git a/test/CodeGenCXX/mangle.cpp b/test/CodeGenCXX/mangle.cpp index 2ffbae71da..03e405ecba 100644 --- a/test/CodeGenCXX/mangle.cpp +++ b/test/CodeGenCXX/mangle.cpp @@ -221,3 +221,9 @@ struct S7 { // CHECK: @"_ZN2S73$_0C1Ev" S7::S7() {} +// PR5063 +template typename __enable_if<(__is_scalar::__value), void>::__type ft8() { } +// CHECK: @_Z3ft8IiEN11__enable_ifIXsr11__is_scalarIT_E7__valueEvE6__typeEv +template void ft8(); +// CHECK: @_Z3ft8IPvEN11__enable_ifIXsr11__is_scalarIT_E7__valueEvE6__typeEv +template void ft8();