Index: src/IceGlobalContext.cpp |
diff --git a/src/IceGlobalContext.cpp b/src/IceGlobalContext.cpp |
index 1c9e3c4eccdd52e0905dac1279e35dced6cd0e20..68280eb81885323aaf02bcbd5ce12077bbbee658 100644 |
--- a/src/IceGlobalContext.cpp |
+++ b/src/IceGlobalContext.cpp |
@@ -214,9 +214,11 @@ void GlobalContext::CodeStats::dump(const IceString &Name, Ostream &Str) { |
} |
GlobalContext::GlobalContext(Ostream *OsDump, Ostream *OsEmit, |
- ELFStreamer *ELFStr, const ClFlags &Flags) |
+ ELFStreamer *ELFStr, const ClFlags &Flags, |
+ Ostream *OsError) |
: ConstPool(new ConstantPool()), ErrorStatus(), StrDump(OsDump), |
- StrEmit(OsEmit), Flags(Flags), RNG(Flags.getRandomSeed()), ObjectWriter(), |
+ StrEmit(OsEmit), StrError(OsError), Flags(Flags), |
+ RNG(Flags.getRandomSeed()), ObjectWriter(), |
OptQ(/*Sequential=*/Flags.isSequential(), |
/*MaxSize=*/Flags.getNumTranslationThreads()), |
// EmitQ is allowed unlimited size. |
@@ -278,8 +280,8 @@ void GlobalContext::translateFunctions() { |
if (Func->hasError()) { |
getErrorStatus()->assign(EC_Translation); |
OstreamLocker L(this); |
- getStrDump() << "ICE translation error: " << Func->getFunctionName() |
- << ": " << Func->getError() << "\n"; |
+ getStrError() << "ICE translation error: " << Func->getFunctionName() |
+ << ": " << Func->getError() << "\n"; |
Item = new EmitterWorkItem(Func->getSequenceNumber()); |
} else { |
Func->getAssembler<>()->setInternal(Func->getInternal()); |