diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2010-11-02 16:54:00 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2010-11-02 16:54:00 +0000 |
commit | dc9bc5aeb8cc34f9fda7d23e0ddb7c3d50f15bea (patch) | |
tree | 977b31c4189c99af2c8252973f358199a1214a0a /clang/lib | |
parent | 5d7be2e6179b165f99ad1d6853b48be9ac5883ba (diff) | |
download | bcm5719-llvm-dc9bc5aeb8cc34f9fda7d23e0ddb7c3d50f15bea.tar.gz bcm5719-llvm-dc9bc5aeb8cc34f9fda7d23e0ddb7c3d50f15bea.zip |
Fix a crash mangling decayed val argument-typed function.
// rdar: //8620510 and PR7666
llvm-svn: 118019
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/CodeGen/Mangle.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/Mangle.cpp b/clang/lib/CodeGen/Mangle.cpp index e47d9cb43a6..37ecf285983 100644 --- a/clang/lib/CodeGen/Mangle.cpp +++ b/clang/lib/CodeGen/Mangle.cpp @@ -1324,7 +1324,9 @@ void CXXNameMangler::mangleType(const ConstantArrayType *T) { } void CXXNameMangler::mangleType(const VariableArrayType *T) { Out << 'A'; - mangleExpression(T->getSizeExpr()); + // decayed vla types (size 0) will just be skipped. + if (T->getSizeExpr()) + mangleExpression(T->getSizeExpr()); Out << '_'; mangleType(T->getElementType()); } |