ArrayRef<uint8_t> Filler = Script<ELFT>::X->getFiller(this->Name);
if (!Filler.empty())
fill(Buf, this->Size, Filler);
- if (Config->Threads) {
- parallel_for_each(Sections.begin(), Sections.end(),
- [=](InputSection<ELFT> *C) { C->writeTo(Buf); });
- } else {
- for (InputSection<ELFT> *C : Sections)
- C->writeTo(Buf);
- }
+ auto Fn = [=](InputSection<ELFT> *C) { C->writeTo(Buf); };
+ if (Config->Threads)
+ parallel_for_each(Sections.begin(), Sections.end(), Fn);
+ else
+ std::for_each(Sections.begin(), Sections.end(), Fn);
// Linker scripts may have BYTE()-family commands with which you
// can write arbitrary bytes to the output. Process them if any.
Script<ELFT>::X->writeDataBytes(this->Name, Buf);