Skip to content

Commit a4dd11c

Browse files
authored
Merge pull request #5210 from bob-wilson/array-ref-fix
Fix a few more cases of ArrayRef problems.
2 parents 1a18c94 + 8ac3815 commit a4dd11c

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

lib/Serialization/Serialization.cpp

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3757,7 +3757,14 @@ static void writeDeclCommentTable(
37573757

37583758
DeclCommentTableWriter Writer(GroupContext);
37593759

3760-
ArrayRef<const FileUnit *> files = SF ? SF : M->getFiles();
3760+
ArrayRef<const FileUnit *> files;
3761+
SmallVector<const FileUnit *, 1> Scratch;
3762+
if (SF) {
3763+
Scratch.push_back(SF);
3764+
files = llvm::makeArrayRef(Scratch);
3765+
} else {
3766+
files = M->getFiles();
3767+
}
37613768
for (auto nextFile : files) {
37623769
Writer.resetSourceOrder();
37633770
const_cast<FileUnit *>(nextFile)->walk(Writer);
@@ -3923,7 +3930,14 @@ void Serializer::writeAST(ModuleOrSourceFile DC) {
39233930

39243931
Optional<DeclID> entryPointClassID;
39253932

3926-
ArrayRef<const FileUnit *> files = SF ? SF : M->getFiles();
3933+
ArrayRef<const FileUnit *> files;
3934+
SmallVector<const FileUnit *, 1> Scratch;
3935+
if (SF) {
3936+
Scratch.push_back(SF);
3937+
files = llvm::makeArrayRef(Scratch);
3938+
} else {
3939+
files = M->getFiles();
3940+
}
39273941
for (auto nextFile : files) {
39283942
if (nextFile->hasEntryPoint())
39293943
entryPointClassID = addDeclRef(nextFile->getMainClass());

0 commit comments

Comments
 (0)