@@ -730,45 +730,38 @@ int linker_script_merget::goto_and_object_mismatch(
730730
731731int linker_script_merget::linker_data_is_malformed (const jsont &data) const
732732{
733- return (!(data.is_object () &&
734- data.object .find (" regions" )!=data.object .end () &&
735- data.object .find (" addresses" )!=data.object .end () &&
736- data[" regions" ].is_array () &&
737- data[" addresses" ].is_array () &&
738- std::all_of (data[" addresses" ].array .begin (),
739- data[" addresses" ].array .end (),
740- [](const jsont &j)
741- {
742- return j.is_object () &&
743- j.object .find (" val" )!=j.object .end () &&
744- j.object .find (" sym" )!=j.object .end () &&
745- j[" val" ].is_number () &&
746- j[" sym" ].is_string ();
747- }) &&
748- std::all_of (data[" regions" ].array .begin (),
749- data[" regions" ].array .end (),
750- [](const jsont &j)
751- {
752- return j.is_object () &&
753- j.object .find (" start" )!=j.object .end () &&
754- j.object .find (" size" )!=j.object .end () &&
755- j.object .find (" annot" )!=j.object .end () &&
756- j.object .find (" commt" )!=j.object .end () &&
757- j.object .find (" start-symbol" )!=j.object .end () &&
758- j.object .find (" has-end-symbol" )!=j.object .end () &&
759- j.object .find (" section" )!=j.object .end () &&
760- j[" start" ].is_number () &&
761- j[" size" ].is_number () &&
762- j[" annot" ].is_string () &&
763- j[" start-symbol" ].is_string () &&
764- j[" section" ].is_string () &&
765- j[" commt" ].is_string () &&
766- ( (j[" has-end-symbol" ].is_true () &&
767- j.object .find (" end-symbol" )!=j.object .end () &&
768- j[" end-symbol" ].is_string ())
769- ||(j[" has-end-symbol" ].is_false () &&
770- j.object .find (" size-symbol" )!=j.object .end () &&
771- j.object .find (" end-symbol" )==j.object .end () &&
772- j[" size-symbol" ].is_string ()));
773- })));
733+ return (
734+ !(data.is_object () && data.object .find (" regions" ) != data.object .end () &&
735+ data.object .find (" addresses" ) != data.object .end () &&
736+ data[" regions" ].is_array () && data[" addresses" ].is_array () &&
737+ std::all_of (
738+ data[" addresses" ].array .begin (),
739+ data[" addresses" ].array .end (),
740+ [](const jsont &j) {
741+ return j.is_object () && j.object .find (" val" ) != j.object .end () &&
742+ j.object .find (" sym" ) != j.object .end () &&
743+ j[" val" ].is_number () && j[" sym" ].is_string ();
744+ }) &&
745+ std::all_of (
746+ data[" regions" ].array .begin (),
747+ data[" regions" ].array .end (),
748+ [](const jsont &j) {
749+ return j.is_object () && j.object .find (" start" ) != j.object .end () &&
750+ j.object .find (" size" ) != j.object .end () &&
751+ j.object .find (" annot" ) != j.object .end () &&
752+ j.object .find (" commt" ) != j.object .end () &&
753+ j.object .find (" start-symbol" ) != j.object .end () &&
754+ j.object .find (" has-end-symbol" ) != j.object .end () &&
755+ j.object .find (" section" ) != j.object .end () &&
756+ j[" start" ].is_number () && j[" size" ].is_number () &&
757+ j[" annot" ].is_string () && j[" start-symbol" ].is_string () &&
758+ j[" section" ].is_string () && j[" commt" ].is_string () &&
759+ ((j[" has-end-symbol" ].is_true () &&
760+ j.object .find (" end-symbol" ) != j.object .end () &&
761+ j[" end-symbol" ].is_string ()) ||
762+ (j[" has-end-symbol" ].is_false () &&
763+ j.object .find (" size-symbol" ) != j.object .end () &&
764+ j.object .find (" end-symbol" ) == j.object .end () &&
765+ j[" size-symbol" ].is_string ()));
766+ })));
774767}
0 commit comments