HomePhabricator

Allow empty mappings for optional YAML input

Description

Allow empty mappings for optional YAML input

Summary:
This change fixes a bug where obj2yaml can in some cases produce YAML that
causes yaml2obj to error.

The ELF YAML document structure has a Sections mapping, which contains three
mappings, all of which are optional: Local, Global, and Weak. Any one of
these can be missing, but if all three are missing, then yaml2obj errors. This
change allows YAML input for cases like this one.

I have tested this with check-llvm and check-lld, and all tests passed.

This change is the result of test failures while working on D39582, which
introduces a DynamicSymbols mapping, which will be empty at times.

Reviewers: compnerd, jakehehrlich, silvas, kledzik, mehdi_amini, pcc

Reviewed By: compnerd

Subscribers: silvas, llvm-commits

Differential Revision: https://reviews.llvm.org/D39908

Details

Committed
kastiglioneNov 16 2017, 9:46 AM
Reviewer
compnerd
Differential Revision
D39908: Allow empty mappings for optional YAML input
Parents
rL318427: Convert another use of createUniqueFile to TempFile::create.
Branches
Unknown
Tags
Unknown