| Index: lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp
|
| diff --git a/lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp b/lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp
|
| index da2907b1a9ee44af02ac208e9d5321f59451f7af..49f3cc28cef22c64751aa26497a1c86fa8b5b24b 100644
|
| --- a/lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp
|
| +++ b/lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp
|
| @@ -377,6 +377,12 @@ bool WriteState::emitRecord(NaClBitstreamWriter &Writer,
|
| if (!Flags.getTryToRecover())
|
| return false;
|
| }
|
| + if (atOutermostScope()) {
|
| + // Recover by ignoring abbreviation definition.
|
| + RecoverableError() << "Defining abbreviation outside block: "
|
| + << Record << "\n";
|
| + return Flags.getTryToRecover();
|
| + }
|
| NaClBitCodeAbbrev *Abbrev = buildAbbrev(Record);
|
| if (Abbrev == nullptr) {
|
| markCurrentBlockWithOmittedAbbreviations();
|
|
|