================ @@ -1750,7 +1750,9 @@ void MappingTraits<std::unique_ptr<ELFYAML::Chunk>>::mapping( std::string MappingTraits<std::unique_ptr<ELFYAML::Chunk>>::validate( IO &io, std::unique_ptr<ELFYAML::Chunk> &C) { if (const auto *F = dyn_cast<ELFYAML::Fill>(C.get())) { - if (F->Pattern && F->Pattern->binary_size() != 0 && !F->Size) + // Can't check the `Size`, as it's required and may be left uninitialized by ---------------- vitalybuka wrote:
However, I can't reproduce with MachOYAML::Section! Because it IO.mapRequired("Size" before optional, so if size is missing, Section.content will not be set, and nothing to match. so the following is a fix (bad) as well :) ``` static void fillMapping(IO &IO, ELFYAML::Fill &Fill) { + IO.mapRequired("Size", Fill.Size); IO.mapOptional("Name", Fill.Name, StringRef()); IO.mapOptional("Pattern", Fill.Pattern); IO.mapOptional("Offset", Fill.Offset); - IO.mapRequired("Size", Fill.Size); } ``` https://github.com/llvm/llvm-project/pull/123280 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits