diff options
Diffstat (limited to 'lib/Bytecode/Reader/Reader.cpp')
-rw-r--r-- | lib/Bytecode/Reader/Reader.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Bytecode/Reader/Reader.cpp b/lib/Bytecode/Reader/Reader.cpp index 3f86c1907b..e9b18e0cea 100644 --- a/lib/Bytecode/Reader/Reader.cpp +++ b/lib/Bytecode/Reader/Reader.cpp @@ -19,6 +19,7 @@ #include "Reader.h" #include "llvm/Bytecode/BytecodeHandler.h" #include "llvm/BasicBlock.h" +#include "llvm/Config/alloca.h" #include "llvm/Constants.h" #include "llvm/Instructions.h" #include "llvm/SymbolTable.h" @@ -1501,7 +1502,7 @@ void BytecodeReader::ParseStringConstants(unsigned NumEntries, ValueTable &Tab){ error("String constant data invalid!"); // Read character data. The type tells us how long the string is. - char Data[ATy->getNumElements()]; + char *Data = reinterpret_cast<char *>(alloca(ATy->getNumElements())); read_data(Data, Data+ATy->getNumElements()); std::vector<Constant*> Elements(ATy->getNumElements()); |