diff options
| author | Benjamin Kramer <benny.kra@googlemail.com> | 2011-03-02 21:27:44 +0000 |
|---|---|---|
| committer | Benjamin Kramer <benny.kra@googlemail.com> | 2011-03-02 21:27:44 +0000 |
| commit | 0f074df9792ab7b9cd094811b6a22a8c18ae3963 (patch) | |
| tree | 566819ecad3cf0a30bee025cbf2e4a6fff540b8e /clang/lib/CodeGen/CGExprConstant.cpp | |
| parent | e84af17b6ebe164b5a50362dc5522905c03912a9 (diff) | |
| download | bcm5719-llvm-0f074df9792ab7b9cd094811b6a22a8c18ae3963.tar.gz bcm5719-llvm-0f074df9792ab7b9cd094811b6a22a8c18ae3963.zip | |
Only emit string initializers in-place if types match. Fixes PR9373.
llvm-svn: 126883
Diffstat (limited to 'clang/lib/CodeGen/CGExprConstant.cpp')
| -rw-r--r-- | clang/lib/CodeGen/CGExprConstant.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGExprConstant.cpp b/clang/lib/CodeGen/CGExprConstant.cpp index 40d7b6c32e4..a4e054d06e4 100644 --- a/clang/lib/CodeGen/CGExprConstant.cpp +++ b/clang/lib/CodeGen/CGExprConstant.cpp @@ -562,7 +562,7 @@ public: llvm::Constant *EmitArrayInitialization(InitListExpr *ILE) { unsigned NumInitElements = ILE->getNumInits(); - if (NumInitElements == 1 && + if (NumInitElements == 1 && ILE->getType() == ILE->getInit(0)->getType() && (isa<StringLiteral>(ILE->getInit(0)) || isa<ObjCEncodeExpr>(ILE->getInit(0)))) return Visit(ILE->getInit(0)); |

